Files
Aaru/DiscImageChef.Tests/Filesystems/FAT12.cs

1959 lines
94 KiB
C#
Raw Normal View History

// /***************************************************************************
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
2017-07-01 09:39:20 +01:00
// Filename : FAT12.cs
// Author(s) : Natalia Portillo <claunia@claunia.com>
//
// Component : DiscImageChef unit testing.
//
// --[ License ] --------------------------------------------------------------
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//
// ----------------------------------------------------------------------------
// Copyright © 2011-2018 Natalia Portillo
// ****************************************************************************/
using System.Collections.Generic;
using System.IO;
using DiscImageChef.CommonTypes;
2017-12-21 14:30:38 +00:00
using DiscImageChef.DiscImages;
using DiscImageChef.Filesystems;
2017-07-01 09:39:20 +01:00
using DiscImageChef.Filters;
using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
public class Fat12
{
2017-12-19 20:33:03 +00:00
readonly string[] testfiles =
{
2017-07-01 09:39:20 +01:00
// 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
2017-12-19 20:33:03 +00:00
"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_mf2hd.img.lz", "msdos_3.30A_ssdd.img.lz",
"msdos_3.30A_ssdd8.img.lz",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
"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_mf2hd.img.lz", "msdos_3.31_ssdd.img.lz", "msdos_3.31_ssdd8.img.lz",
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00: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",
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00: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",
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
"msdos_att_2.11_dsdd.img.lz",
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
"msdos_dell_3.30_ssdd8.img.lz",
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
"msdos_epson_3.10_dsdd.img.lz", "msdos_epson_3.10_dsdd8.img.lz", "msdos_epson_3.10_dshd.img.lz",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
"msdos_hp_3.20_ssdd8.img.lz",
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
"msdos_hyonsung_3.21_ssdd8.img.lz",
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
"msdos_olivetti_3.10_dsdd.img.lz", "msdos_olivetti_3.10_dshd.img.lz", "msdos_olivetti_3.10_ssdd.img.lz",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
"msdos_toshiba_3.30_ssdd8.img.lz",
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
"msdos_toshiba_4.01_ssdd8.img.lz",
// Novell DOS 7.00
2017-12-19 20:33:03 +00: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",
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
"pcdos_2.00_dsdd.img.lz",
// PC-DOS 2.10
"pcdos_2.10_dsdd.img.lz",
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
"pcdos_3.00_dshd.img.lz",
// PC-DOS 3.10
"pcdos_3.10_dshd.img.lz",
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
"pcdos_3.30_dshd.img.lz", "pcdos_3.30_mf2hd.img.lz",
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
"pcdos_4.00_dshd.img.lz", "pcdos_4.00_mf2hd.img.lz",
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00: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",
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
"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",
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
"mkfs.vfat_dshd.img.lz", "mkfs.vfat_mf2dd.img.lz", "mkfs.vfat_mf2ed.img.lz", "mkfs.vfat_mf2hd.img.lz",
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
"mkfs.vfat_atari_dshd.img.lz", "mkfs.vfat_atari_mf2dd.img.lz", "mkfs.vfat_atari_mf2ed.img.lz",
"mkfs.vfat_atari_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
"msos2_1.21_dsdd.img.lz", "msos2_1.21_dshd.img.lz", "msos2_1.21_mf2dd.img.lz", "msos2_1.21_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
"os2_1.20_dsdd.img.lz", "os2_1.20_dshd.img.lz", "os2_1.20_mf2dd.img.lz", "os2_1.20_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
"os2_1.30_dsdd.img.lz", "os2_1.30_dshd.img.lz", "os2_1.30_mf2dd.img.lz", "os2_1.30_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00: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",
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
"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",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
"os2_8.162_dshd.img.lz", "os2_8.162_mf2dd.img.lz", "os2_8.162_mf2ed.img.lz", "os2_8.162_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
"os2_9.023_dshd.img.lz", "os2_9.023_mf2dd.img.lz", "os2_9.023_mf2ed.img.lz", "os2_9.023_mf2hd.img.lz",
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
"ecs_dshd.img.lz", "ecs_mf2dd.img.lz", "ecs_mf2ed.img.lz", "ecs_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
"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",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
"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
2017-12-19 20:33:03 +00:00
"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",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
"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",
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
"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",
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
"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",
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
"winme_dsdd.img.lz", "winme_dshd.img.lz", "winme_mf2dd.img.lz", "winme_mf2ed.img.lz", "winme_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
"winnt_3.10_dshd.img.lz", "winnt_3.10_mf2dd.img.lz", "winnt_3.10_mf2ed.img.lz", "winnt_3.10_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
"winnt_3.50_dshd.img.lz", "winnt_3.50_mf2dd.img.lz", "winnt_3.50_mf2ed.img.lz", "winnt_3.50_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
"winnt_3.51_dshd.img.lz", "winnt_3.51_mf2dd.img.lz", "winnt_3.51_mf2ed.img.lz", "winnt_3.51_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00: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",
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
"win2000_dsdd.img.lz", "win2000_dshd.img.lz", "win2000_mf2dd.img.lz", "win2000_mf2ed.img.lz",
"win2000_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
"winvista_dsdd.img.lz", "winvista_dshd.img.lz", "winvista_mf2dd.img.lz", "winvista_mf2ed.img.lz",
"winvista_mf2hd.img.lz",
2017-07-05 01:47:45 +01:00
// BeOS R4.5
"beos_r4.5_mf2hd.img.lz",
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
"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",
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
"tos_1.04_mf1dd.st.lz", "tos_1.04_mf2dd.st.lz",
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
"netbsd_1.6_mf2dd.img.lz", "netbsd_1.6_mf2hd.img.lz",
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
"nextstep_3.3_mf2dd.img.lz", "nextstep_3.3_mf2hd.img.lz",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
"openstep_4.0_mf2dd.img.lz", "openstep_4.0_mf2hd.img.lz",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
"openstep_4.2_mf2dd.img.lz", "openstep_4.2_mf2hd.img.lz",
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
"solaris_2.4_mf2dd.img.lz", "solaris_2.4_mf2hd.img.lz",
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
"coherentunix_4.2.10_dsdd.img.lz", "coherentunix_4.2.10_dshd.img.lz", "coherentunix_4.2.10_mf2dd.img.lz",
"coherentunix_4.2.10_mf2hd.img.lz",
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
"scoopenserver_5.0.7hw_dshd.img.lz", "scoopenserver_5.0.7hw_mf2dd.img.lz",
"scoopenserver_5.0.7hw_mf2hd.img.lz",
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"msdos_epson_pc98_5.00_md2dd.img.lz", "msdos_epson_pc98_5.00_md2hd.img.lz",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
"msdos_pc98_3.30_md2dd.img.lz", "msdos_pc98_3.30_md2hd.img.lz",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"msdos_pc98_5.00_md2dd.img.lz", "msdos_pc98_5.00_md2hd.img.lz",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
"msdos_pc98_6.20_md2dd.img.lz", "msdos_pc98_6.20_md2hd.img.lz"
};
2017-12-19 20:33:03 +00:00
readonly MediaType[] mediatypes =
{
2017-07-01 09:39:20 +01:00
// 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
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00: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_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
MediaType.DOS_525_DS_DD_9,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00: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_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_525_SS_DD_9,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
MediaType.DOS_525_DS_DD_9,
// PC-DOS 2.10
MediaType.DOS_525_DS_DD_9,
// PC-DOS 2000
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
MediaType.DOS_525_HD,
// PC-DOS 3.10
MediaType.DOS_525_HD,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_HD,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_HD,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00: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,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00: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,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00: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,
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00: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,
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00: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,
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00: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,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
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,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
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
2017-12-19 20:33:03 +00:00
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,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
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,
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
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,
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
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,
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00: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,
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00: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,
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00: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,
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00: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,
2017-07-05 01:47:45 +01:00
// BeOS R4.5
MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_SS_DD_9, MediaType.ATARI_35_SS_DD, MediaType.ATARI_35_SS_DD_11, MediaType.DOS_35_DS_DD_9,
MediaType.ATARI_35_DS_DD, MediaType.ATARI_35_DS_DD_11, MediaType.DOS_35_ED, MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_SS_DD_9, MediaType.DOS_35_DS_DD_9,
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.NEC_525_HD,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.NEC_525_HD,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.NEC_525_HD,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
MediaType.DOS_35_DS_DD_9, MediaType.NEC_525_HD
};
2017-12-19 20:33:03 +00:00
readonly ulong[] sectors =
{
2017-07-01 09:39:20 +01:00
// Concurrent DOS 6.00
2400, 1440, 2880,
// DR-DOS 3.40
720, 640, 2400, 1440, 2880, 360, 320,
// DR-DOS 3.41
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 5.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 6.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.02
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880,
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
720,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
720, 640, 2400,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
720, 2400, 360,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
720,
// PC-DOS 2.10
720,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
2400,
// PC-DOS 3.10
2400,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
2400, 2880,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
2400, 2880,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
720, 640, 2400, 1440, 5760, 2880, 360, 320,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
640, 720, 2400, 1440, 5760, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880, 360,
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 5760, 2880,
2017-07-05 01:47:45 +01:00
// BeOS R4.5
2880,
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
720, 800, 880, 1440, 1600, 1760, 5760, 2880,
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
720, 1440,
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
1440, 2880,
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
1440, 2880,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
1440, 2880,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
1440, 2880,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
1440, 2880,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
720, 2400, 1440, 2880,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
2400, 1440, 2880,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
1440, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
1440, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
1440, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
1440, 1232
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly uint[] sectorsize =
{
2017-07-01 09:39:20 +01:00
// Concurrent DOS 6.00
512, 512, 512,
// DR-DOS 3.40
512, 512, 512, 512, 512, 512, 512,
// DR-DOS 3.41
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 5.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 6.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.02
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
512,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
512,
// PC-DOS 2.10
512,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
512,
// PC-DOS 3.10
512,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// BeOS R4.5
512,
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
512, 512, 512, 512, 512, 512, 512, 512,
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
512, 512, 512, 512,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
512, 512, 512,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
512, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
512, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
512, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
512, 1024
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly long[] clusters =
{
2017-07-01 09:39:20 +01:00
// Concurrent DOS 6.00
2400, 720, 2880,
// DR-DOS 3.40
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 3.41
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 5.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 6.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.02
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880,
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
360,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
360, 320, 2400,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
360, 2400, 360,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
360,
// PC-DOS 2.10
360,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
2400,
// PC-DOS 3.10
2400,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
2400, 2880,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
2400, 2880,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
360, 320, 2400, 720, 2880, 2880, 360, 320,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
1200, 720, 2880, 1440,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
320, 360, 2400, 720, 2880, 2880, 320, 360,
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880, 360,
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880, 2880,
2017-07-05 01:47:45 +01:00
// BeOS R4.5
2880,
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
360, 400, 440, 720, 800, 880, 2880, 1440,
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
360, 720,
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
720, 2880,
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
720, 2880,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
720, 2880,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
720, 2880,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
720, 2880,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
360, 2400, 720, 2880,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
2400, 1440, 2880,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
640, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
640, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
640, 1232,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
640, 1232
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly int[] clustersize =
{
2017-07-01 09:39:20 +01:00
// Concurrent DOS 6.00
512, 1024, 512,
// DR-DOS 3.40
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 3.41
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 5.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 6.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.02
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512,
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
1024,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
1024, 1024, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
1024, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
1024,
// PC-DOS 2.10
1024,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
512,
// PC-DOS 3.10
512,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
1024, 1024, 1024, 1024,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
1024, 1024, 512, 1024, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512, 512, 512,
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 1024, 512,
2017-07-05 01:47:45 +01:00
// BeOS R4.5
512,
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
1024, 1024,
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
1024, 512,
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
1024, 512,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
1024, 512,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
1024, 512,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
1024, 512,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
1024, 512, 1024, 512,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
512, 512, 512,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
1024, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
1024, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
1024, 1024,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
1024, 1024
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly string[] volumename =
{
2017-07-01 09:39:20 +01:00
// 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
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// DR-DOS 7.02
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
null,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "NO NAME ", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "NO NAME ",
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
null,
// PC-DOS 2.10
null,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
null,
// PC-DOS 3.10
null,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
null, null,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL",
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-05 01:47:45 +01:00
// BeOS R4.5
"VOLUMELABEL",
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
"volumelabel", "volumelabel", "volumelabel", "volumelabel", "volumelabel", "volumelabel", "volumelabel",
"volumelabel",
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL",
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL",
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUME LABE",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL",
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
null, null,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
null, null, null,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"NO NAME ", "NO NAME ",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
null, null,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"NO NAME ", "NO NAME ",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
"NO NAME ", "NO NAME "
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly string[] volumeserial =
{
2017-07-01 09:39:20 +01:00
// 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
2017-12-19 20:33:03 +00:00
"1BF63C69", "1BF70E75", "1BF7185F", "1BF80C4F", "1BF90F1D", "1BF82777", "1BF72430", "1BF72F1E",
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
"0C1A2013", "0CE22B5B", "0CEA1D3E", "0CEE102F", "0CEE3760", "0CEF2739",
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
"1BFD1977", "1BFD2D3F", "1BFD3531", "1BFC3231", "1BFA1D58", "1BFC117D", "1BFE0971", "1BFE1423",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
"122C190A", null, "2480190A", "2D471909", "0F5A1908", "2F3D190A", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
"0B6018F8", null, "1E3518F8", "285A18FB", "231D18FE", "415118FC", "316118F8", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
"067B18F6", null, "193418F6", "1F3A18F5", "165318F3", "172418F4", "234918F6", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
"265418ED", null, "0B7018EE", "127418F0", "137F18F2", "364C18F0", "185C18EE", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
"064B18EB", null, "192518EB", "244C18EA", "3C3118E7", "344118E9", "267E18EB", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
"2A41181B", null, "0641181C", "3B26181C", "082518E2", "237118E1", "123F181C", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
"317C1818", null, "0D3A1819", "3C251817", "387A1815", "185E1817", "18231819", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
"1156180A", null, "2951180A", "3057180B", "2B4A1811", "344B180C", "352D180A", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
null,
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
null, null, null, null, null, null, null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
"0B2519E7", "163419E7", "1E3119E7", "133919E9", "177419EA", "317E19E7", "3B7319E7",
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
"1BE7254C", "1BE73024", "1BE7397C", "1BE63635", "1BE51661", "1BE61143", "1BE80A5D", "1BE8144C",
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
"1BE93E2B", "1BEA234D", "1BEA325D", "1BEB294F", "1BEC2C2E", "1BEC0C5D", "1BEA3E60", "1BEB0E26",
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
null,
// PC-DOS 2.10
null,
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
"2634100E", null, "3565100E", "3B6B1012", "3B2D1013", "1D491013", "4136100E", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
null,
// PC-DOS 3.10
null,
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
null, null,
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
"3C240FE3", "2E3E0FE1",
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
"33260FF9", null, "11550FFA", "234F0FFB", "2F600FFC", "0D550FFC", "1D630FFA", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
"06231000", null, "1A3E1000", "1F3B0FFF", "3D750FFD", "3F4F0FFE", "26471000", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
"25551004", null, "3E5F1004", "142D1006", "17541007", "355A1006", "0D5E1005", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
"2B22100C", null, "3B47100C", "0C55100C", "1B80100A", "0B59100B", "0A3A100D", null,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
"20C279B1", "20FD9501", "2132D70A", "2118F1AA",
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
"83E030", "C53F06", "A154CD", "D54DEE",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
"9C170C15", "9BFB0C15", "9C13FC15", "9BF99C15",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
"66A42C15", "67696C15", "66DEBC15", "66DC4C15",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
"676B4C15", "67768C15", "9C12DC15", "66A74C15",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
"9C074C15", "66BCFC15", "66C1AC15", "66C7FC15",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
"66C47C15", "66CBEC15", "9C167C15", "9C147C15", "9C0FEC15",
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
"5BF5E015", "5BE61015", "5C26F015", "5C376015",
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
"5C418015", "5BE20015", "5C7F1015", "5B83C015",
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
"5C3BD015", "5B807015", "5BE69015", "5C187015", "5C390015",
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
"1BFCB414", "E6C6C414", "E6CCF414", "E6AF6414", "1C005414",
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
"E6AEB414", "1C00D414", "1C03B414", "E6C90414", "E6B6E414",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
"E6AF7414", "E6D63414", "E6A65414", "E6AE6414",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
"E6CD9414", "1BFAD414", "E6DFF414", "E6D4C414",
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
"E6CA5814", "E6CBC814", "E6B81814", "1C013814",
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
null, "3B360D0D", "24240D0D", "3C260D11", "30050D10", "275A0D11", null, "3B100D0F",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
null, "1C5B0D19", "11510D19", "0F1F0D15", "40200D17", "3D610D14", null, "280B0D19",
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
null, "1F3B0D1C", "14470D1C", "1C510DE4", "2E250DE2", "10640DE4", null, "2B3E0D1C",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
null, "18190DFB", "0A240DFB", "1E320DE7", "33230DE8", "125B0DE7", null, "21410DFB",
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
null, "40090E0F", "28140E0F", "0E620E0A", "14390E0D", "0E081246", null, "30600E10",
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
null, "1B550EEC", "1B100EEB", "08410EE6", "0E0F0EE8", "325D0EE4", null, "13380EEC",
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
"2F200F02", "103A0F01", "2F1C0EFC", "21570EFF", "07040EFB",
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
"60EA50BC", "6C857D51", "4009440C", "30761EDC",
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
"0C478404", "7CBEB35B", "7C1E8DCB", "ECB276AF",
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
"482D8681", "8889C95E", "54DE6C39", "F47D2516",
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
"D8CAAC1F", "E0BB6D70", "C08C3C60", "9C44B411", "4C7DD099", "4CD82982",
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
"4019989C", "78F30AF8", "E4217DDE", "80B3B996", "28043527",
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
"3C9F0BD2", "3A8E465C", "B2EFB822", "3C30C632", "16DAB07A",
2017-07-05 01:47:45 +01:00
// BeOS R4.5
"00000000",
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
"A82270", "D08917", "37AD91", "1ED910", "299DFE", "94AE59", "3A1757", "C08249",
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
"2356F0", "51C7A3",
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
"EEB51A0C", "CCFD1A06",
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
null, null,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
null, null,
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
null, null,
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
null, null,
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
null, null, null, null,
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
null, null, null,
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"27021316", "11021317",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
null, null,
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"1002120E", "41021209",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
"3D021418", "16021409"
2017-07-01 09:39:20 +01:00
};
2017-12-19 20:33:03 +00:00
readonly string[] oemid =
{
2017-07-01 09:39:20 +01:00
// 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
2017-12-19 20:33:03 +00:00
"DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7",
2017-07-01 09:39:20 +01:00
// DR-DOS 7.03
2017-12-19 20:33:03 +00:00
"DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7",
2017-07-01 09:39:20 +01:00
// DR-DOS 8.00
2017-12-19 20:33:03 +00:00
"DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7", "DRDOS 7",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30A
2017-12-19 20:33:03 +00:00
"MSDOS3.3", null, "MSDOS3.3", "MSDOS3.3", "MSDOS3.3", "MSDOS3.3", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.31
2017-12-19 20:33:03 +00:00
"IBM 3.3", null, "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01
2017-12-19 20:33:03 +00:00
"MSDOS4.0", null, "MSDOS4.0", "MSDOS4.0", "MSDOS4.0", "MSDOS4.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 5.00
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.00
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.20 RC1
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.21
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 6.22
2017-12-19 20:33:03 +00:00
"MSDOS5.0", null, "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 7.10
2017-12-19 20:33:03 +00:00
"MSWIN4.1", null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Amstrad
2017-12-19 20:33:03 +00:00
"MSDOS3.2", null, "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 2.11 for AT&T
"PSA 1.04",
// MS-DOS 3.30 for DeLL
2017-12-19 20:33:03 +00:00
"IBM 3.3", null, "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Epson
2017-12-19 20:33:03 +00:00
"EPS 3.10", "EPS 3.10", "EPS 3.10",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for Epson
2017-12-19 20:33:03 +00:00
"IBM 3.2", "IBM 3.2", "IBM 3.2", "IBM 3.2", "IBM 3.2", "IBM 3.2",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.20 for HP
2017-12-19 20:33:03 +00:00
"MSDOS3.2", null, "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Hyosung
2017-12-19 20:33:03 +00:00
"MSDOS3.2", null, "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.21 for Kaypro
2017-12-19 20:33:03 +00:00
"MSDOS3.2", null, "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", "MSDOS3.2", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 3.10 for Olivetti
2017-12-19 20:33:03 +00:00
"IBM 3.1", "IBM 3.1", "IBM 3.1",
2017-07-01 09:39:20 +01:00
// MS-DOS 3.30 for Toshiba
2017-12-19 20:33:03 +00:00
"IBM 3.3", null, "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", null,
2017-07-01 09:39:20 +01:00
// MS-DOS 4.01 for Toshiba
2017-12-19 20:33:03 +00:00
"T V4.00 ", "T V4.00 ", "T V4.00 ", "T V4.00 ", "T V4.00 ", "T V4.00 ", "T V4.00 ",
2017-07-01 09:39:20 +01:00
// Novell DOS 7.00
2017-12-19 20:33:03 +00:00
"NWDOS7.0", "NWDOS7.0", "NWDOS7.0", "NWDOS7.0", "NWDOS7.0", "NWDOS7.0", "NWDOS7.0", "NWDOS7.0",
2017-07-01 09:39:20 +01:00
// OpenDOS 7.01
2017-12-19 20:33:03 +00:00
"OPENDOS7", "OPENDOS7", "OPENDOS7", "OPENDOS7", "OPENDOS7", "OPENDOS7", "OPENDOS7", "OPENDOS7",
2017-07-01 09:39:20 +01:00
// PC-DOS 2.00
"IBM 2.0",
// PC-DOS 2.10
"IBM 2.0",
// PC-DOS 2000
2017-12-19 20:33:03 +00:00
"IBM 7.0", null, "IBM 7.0", "IBM 7.0", "IBM 7.0", "IBM 7.0", "IBM 7.0", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 3.00
"IBM 3.0",
// PC-DOS 3.10
"IBM 3.1",
// PC-DOS 3.30
2017-12-19 20:33:03 +00:00
"IBM 3.3", "IBM 3.3",
2017-07-01 09:39:20 +01:00
// PC-DOS 4.00
2017-12-19 20:33:03 +00:00
"IBM 4.0", "IBM 4.0",
2017-07-01 09:39:20 +01:00
// PC-DOS 5.00
2017-12-19 20:33:03 +00:00
"IBM 5.0", null, "IBM 5.0", "IBM 5.0", "IBM 5.0", "IBM 5.0", "IBM 5.0", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 5.02
2017-12-19 20:33:03 +00:00
"IBM 5.0", null, "IBM 5.0", "IBM 5.0", "IBM 5.0", "IBM 5.0", "IBM 5.0", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.10
2017-12-19 20:33:03 +00:00
"IBM 6.0", null, "IBM 6.0", "IBM 6.0", "IBM 6.0", "IBM 6.0", "IBM 6.0", null,
2017-07-01 09:39:20 +01:00
// PC-DOS 6.30
2017-12-19 20:33:03 +00:00
"IBM 6.0", null, "IBM 6.0", "IBM 6.0", "IBM 6.0", "IBM 6.0", "IBM 6.0", null,
2017-07-01 20:54:13 +01:00
// mkfs.vfat
2017-12-19 20:33:03 +00:00
"mkfs.fat", "mkfs.fat", "mkfs.fat", "mkfs.fat",
2017-07-01 20:54:13 +01:00
// mkfs.vfat for Atari
2017-12-19 20:33:03 +00:00
"mkdosf", "mkdosf", "mkdosf", "mkdosf",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.00 for Tandy
2017-12-19 20:33:03 +00:00
"TAN 10.0", "TAN 10.0", "TAN 10.0", "TAN 10.0",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for AST
2017-12-19 20:33:03 +00:00
"IBM 10.1", "IBM 10.1", "IBM 10.1", "IBM 10.1",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.10 for Nokia
2017-12-19 20:33:03 +00:00
"IBM 10.1", "IBM 10.1", "IBM 10.1", "IBM 10.1",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.21
2017-12-19 20:33:03 +00:00
"IBM 10.2", "IBM 10.2", "IBM 10.2", "IBM 10.2",
2017-07-02 04:20:00 +01:00
// Microsoft OS/2 1.30.1
2017-12-19 20:33:03 +00:00
"IBM 10.2", "IBM 10.2", "IBM 10.2", "IBM 10.2", "IBM 10.2",
2017-07-02 04:20:00 +01:00
// OS/2 1.20
2017-12-19 20:33:03 +00:00
"IBM 10.2", "IBM 10.2", "IBM 10.2", "IBM 10.2",
2017-07-02 04:20:00 +01:00
// OS/2 1.30
2017-12-19 20:33:03 +00:00
"IBM 10.2", "IBM 10.2", "IBM 10.2", "IBM 10.2",
2017-07-02 04:20:00 +01:00
// OS/2 2.00
2017-12-19 20:33:03 +00:00
"IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0",
2017-07-02 04:20:00 +01:00
// OS/2 2.10
2017-12-19 20:33:03 +00:00
"IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0",
2017-07-02 04:20:00 +01:00
// OS/2 2.11
2017-12-19 20:33:03 +00:00
"IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 3
2017-12-19 20:33:03 +00:00
"IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0",
2017-07-02 04:20:00 +01:00
// OS/2 Warp 4
2017-12-19 20:33:03 +00:00
"IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0",
2017-07-02 04:20:00 +01:00
// eComStation
2017-12-19 20:33:03 +00:00
"IBM 4.50", "IBM 4.50", "IBM 4.50", "IBM 4.50",
2017-07-05 01:47:45 +01:00
// Windows 95
2017-12-19 20:33:03 +00:00
null, "MSWIN4.0", "MSWIN4.0", "MSWIN4.0", "MSWIN4.0", "MSWIN4.0", null, "MSWIN4.0",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2
2017-12-19 20:33:03 +00:00
null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null, "MSWIN4.1",
// Windows 95 OSR 2.1
2017-12-19 20:33:03 +00:00
null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null, "MSWIN4.1",
2017-07-05 01:47:45 +01:00
// Windows 95 OSR 2.5
2017-12-19 20:33:03 +00:00
null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null, "MSWIN4.1",
2017-07-05 01:47:45 +01:00
// Windows 98
2017-12-19 20:33:03 +00:00
null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null, "MSWIN4.1",
2017-07-05 01:47:45 +01:00
// Windows 98 Second Edition
2017-12-19 20:33:03 +00:00
null, "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", null, "MSWIN4.1",
2017-07-05 01:47:45 +01:00
// Windows Me
2017-12-19 20:33:03 +00:00
"MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1",
2017-07-05 01:47:45 +01:00
// Windows NT 3.10
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// Windows NT 3.50
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// Windows NT 3.51
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// Windows NT 4.00
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// Windows 2000
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// Windows Vista
2017-12-19 20:33:03 +00:00
"MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
2017-07-05 01:47:45 +01:00
// BeOS R4.5
"BeOS ",
2017-07-08 19:24:07 +01:00
// Hatari
2017-12-19 20:33:03 +00:00
"NNNNNN", "NNNNNN", "NNNNNN", "NNNNNN", "NNNNNN", "NNNNNN", "NNNNNN", "NNNNNN",
2017-07-08 19:24:07 +01:00
// Atari TOS 1.04
2017-12-19 20:33:03 +00:00
"NNNNNN", "NNNNNN",
2017-07-08 19:24:07 +01:00
// NetBSD 1.6
2017-12-19 20:33:03 +00:00
"BSD 4.4", "BSD 4.4",
2017-07-08 19:24:07 +01:00
// NeXTStep 3.3
2017-12-19 20:33:03 +00:00
"NEXT ", "NEXT ",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.0
2017-12-19 20:33:03 +00:00
"NEXT ", "NEXT ",
2017-07-08 19:24:07 +01:00
// OpenStep for Mach 4.2
2017-12-19 20:33:03 +00:00
"NEXT ", "NEXT ",
2017-07-08 19:24:07 +01:00
// Solaris 2.4
2017-12-19 20:33:03 +00:00
"MSDOS3.3", "MSDOS3.3",
2017-07-13 00:17:18 +01:00
// COHERENT UNIX 4.2.10
2017-12-19 20:33:03 +00:00
"COHERENT", "COHERENT", "COHERENT", "COHERENT",
2017-07-13 00:17:18 +01:00
// SCO OpenServer 5.0.7Hw
2017-12-19 20:33:03 +00:00
"SCO BOOT", "SCO BOOT", "SCO BOOT",
2017-08-02 18:30:16 +01:00
// Epson MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"EPSON5.0", "EPSON5.0",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 3.30 for PC-98
2017-12-19 20:33:03 +00:00
"NEC 2.00", "NEC 2.00",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 5.00 for PC-98
2017-12-19 20:33:03 +00:00
"NEC 5.0", "NEC 5.0",
2017-08-02 18:30:16 +01:00
// NEC MS-DOS 6.20 for PC-98
2017-12-21 02:52:12 +00:00
"NEC 5.0", "NEC 5.0"
2017-07-01 09:39:20 +01:00
};
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
2017-07-01 09:39:20 +01:00
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
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]);
2017-07-01 09:39:20 +01:00
Filesystem fs = new FAT();
Partition wholePart = new Partition
{
2017-07-19 16:37:11 +01:00
Name = "Whole device",
Length = image.ImageInfo.Sectors,
Size = image.ImageInfo.Sectors * image.ImageInfo.SectorSize
};
Assert.AreEqual(true, fs.Identify(image, wholePart), testfiles[i]);
fs.GetInformation(image, wholePart, out _);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
2017-07-01 09:39:20 +01:00
Assert.AreEqual("FAT12", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
2017-07-01 09:39:20 +01:00
Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
[TestFixture]
public class Fat12Apm
{
readonly string[] testfiles = {"macosx_10.11.vdi.lz"};
readonly ulong[] sectors = {16384};
readonly uint[] sectorsize = {512};
readonly long[] clusters = {4076};
readonly int[] clustersize = {2048};
readonly string[] volumename = {"VOLUMELABEL"};
readonly string[] volumeserial = {"32181F09"};
readonly string[] oemid = {"BSD 4.4"};
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12_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]);
List<Partition> partitions = Core.Partitions.GetAll(image);
Filesystem fs = new FAT();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
if(partitions[j].Type == "DOS_FAT_12")
{
part = j;
break;
}
Assert.AreNotEqual(-1, part, $"Partition not found on {testfiles[i]}");
Assert.AreEqual(true, fs.Identify(image, partitions[part]), testfiles[i]);
fs.GetInformation(image, partitions[part], out _);
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(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]);
}
}
}
[TestFixture]
public class Fat12Gpt
{
readonly string[] testfiles = {"macosx_10.11.vdi.lz"};
readonly ulong[] sectors = {16384};
readonly uint[] sectorsize = {512};
readonly long[] clusters = {4076};
readonly int[] clustersize = {2048};
readonly string[] volumename = {"VOLUMELABEL"};
readonly string[] volumeserial = {"66901F1B"};
readonly string[] oemid = {"BSD 4.4"};
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12_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]);
List<Partition> partitions = Core.Partitions.GetAll(image);
Filesystem fs = new FAT();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
if(partitions[j].Type == "Microsoft Basic data")
{
part = j;
break;
}
Assert.AreNotEqual(-1, part, $"Partition not found on {testfiles[i]}");
Assert.AreEqual(true, fs.Identify(image, partitions[part]), testfiles[i]);
fs.GetInformation(image, partitions[part], out _);
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(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]);
}
}
}
[TestFixture]
public class Fat12Mbr
{
readonly string[] testfiles =
{
"compaqmsdos331.vdi.lz", "drdos_3.40.vdi.lz", "drdos_3.41.vdi.lz", "drdos_5.00.vdi.lz", "drdos_6.00.vdi.lz",
"drdos_7.02.vdi.lz", "drdos_7.03.vdi.lz", "drdos_8.00.vdi.lz", "msdos331.vdi.lz", "msdos401.vdi.lz",
"msdos500.vdi.lz", "msdos600.vdi.lz", "msdos620rc1.vdi.lz", "msdos620.vdi.lz", "msdos621.vdi.lz",
"msdos622.vdi.lz", "msdos710.vdi.lz", "novelldos_7.00.vdi.lz", "opendos_7.01.vdi.lz", "pcdos2000.vdi.lz",
"pcdos200.vdi.lz", "pcdos210.vdi.lz", "pcdos300.vdi.lz", "pcdos310.vdi.lz", "pcdos330.vdi.lz",
"pcdos400.vdi.lz", "pcdos500.vdi.lz", "pcdos502.vdi.lz", "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_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 =
{
8192, 30720, 28672, 28672, 28672, 28672, 28672, 28672, 8192, 8192, 8192, 8192, 8192, 8192, 8192, 8192,
16384, 28672, 28672, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 8192,
8192, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
16384, 16384
};
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, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512, 512
};
readonly long[] clusters =
{
1000, 3654, 3520, 3520, 3520, 3520, 3520, 3520, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 2008, 3520,
3520, 4024, 4031, 4031, 4024, 4024, 4024, 4024, 4024, 4024, 4024, 4024, 1000, 1000, 2008, 2008, 2008, 2008,
2008, 2008, 2008, 2008, 2008, 2008, 1890, 4079, 3552, 4088, 2008, 2008, 2008, 2008, 2044, 2044, 2044, 4016,
2044, 2044, 4016, 3072, 2040, 3584, 2044, 2044, 2044
};
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, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 4096,
4096, 4096, 4096, 4096, 4096, 4096, 4096, 2048, 2048, 2048, 4096, 4096, 4096, 4096, 4096, 4096, 4096, 2048,
4096, 4096, 2048, 2048, 4096, 2048, 4096, 4096, 4096
};
readonly string[] volumename =
{
null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", null, null, null,
null, null, "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL",
"VolumeLabel", "VOLUMELABEL", "VOLUMELABEL", "VOLUMELABEL"
};
readonly string[] volumeserial =
{
null, null, null, null, null, null, null, "1BFB1273", null, "407D1907", "345D18FB", "332518F4", "395718E9",
"076718EF", "1371181B", "23281816", "2F781809", null, null, "294F100F", null, null, null, null, null,
"0F340FE4", "1A5E0FF9", "1D2F0FFE", "076C1004", "2C481009", null, "3C2319E8", "66CC3C15", "66A54C15", null,
"5C578015", "5B845015", "5C4BF015", "E6B5F414", "E6B15414", "E6A41414", "E6A39414", "E6B0B814", "26A21EF4",
"74F4921D", "C4B64D11", "29200D0C", "234F0DE4", "074C0DFC", "33640D18", "0E121460", "094C0EED", "38310F02",
"50489A1B", "2CE52101", "94313E7E", "BC184FE6", "BAD08A1E", "00000000", "8D418102", "8FC80E0A", "34FA0E0B",
"02140E0B"
};
readonly string[] oemid =
{
"IBM 3.3", "IBM 3.2", "IBM 3.2", "IBM 3.3", "IBM 3.3", "IBM 3.3", "DRDOS 7", "IBM 5.0", "IBM 3.3",
"MSDOS4.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0", "MSWIN4.1", "IBM 3.3",
"IBM 3.3", "IBM 7.0", "IBM 2.0", "IBM 2.0", "IBM 3.0", "IBM 3.1", "IBM 3.3", "IBM 4.0", "IBM 5.0",
"IBM 5.0", "IBM 6.0", "IBM 6.0", "T V3.30 ", "T V4.00 ", "IBM 10.2", "IBM 10.2", "IBM 3.2", "IBM 10.2",
"IBM 10.2", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 20.0", "IBM 4.50", "BSD 4.4", "MSDOS5.0",
"MSDOS5.0", "MSWIN4.0", "MSWIN4.1", "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]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12_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]);
List<Partition> partitions = Core.Partitions.GetAll(image);
Filesystem fs = new FAT();
Assert.AreEqual(true, fs.Identify(image, partitions[0]), testfiles[i]);
fs.GetInformation(image, partitions[0], out _);
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(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]);
}
}
}
2017-12-19 20:33:03 +00:00
}