2017-05-19 20:28:49 +01:00
|
|
|
// /***************************************************************************
|
2016-10-16 07:29:19 +01:00
|
|
|
// The Disc Image Chef
|
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
//
|
|
|
|
|
// Filename : Enums.cs
|
|
|
|
|
// Author(s) : Natalia Portillo <claunia@claunia.com>
|
|
|
|
|
//
|
2017-12-19 03:50:57 +00:00
|
|
|
// Component : Device structures decoders.
|
2016-10-16 07:29:19 +01:00
|
|
|
//
|
|
|
|
|
// --[ Description ] ----------------------------------------------------------
|
|
|
|
|
//
|
2017-12-19 03:50:57 +00:00
|
|
|
// Contains PCMCIA enumerations.
|
2016-10-16 07:29:19 +01:00
|
|
|
//
|
|
|
|
|
// --[ License ] --------------------------------------------------------------
|
|
|
|
|
//
|
|
|
|
|
// This library is free software; you can redistribute it and/or modify
|
|
|
|
|
// it under the terms of the GNU Lesser General Public License as
|
|
|
|
|
// published by the Free Software Foundation; either version 2.1 of the
|
|
|
|
|
// License, or (at your option) any later version.
|
|
|
|
|
//
|
|
|
|
|
// This library 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
|
|
|
|
|
// Lesser General Public License for more details.
|
|
|
|
|
//
|
|
|
|
|
// You should have received a copy of the GNU Lesser General Public
|
|
|
|
|
// License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
//
|
|
|
|
|
// ----------------------------------------------------------------------------
|
2018-12-29 17:34:38 +00:00
|
|
|
// Copyright © 2011-2019 Natalia Portillo
|
2016-10-16 07:29:19 +01:00
|
|
|
// ****************************************************************************/
|
2016-10-17 04:41:27 +01:00
|
|
|
|
2017-12-22 02:04:18 +00:00
|
|
|
using System.Diagnostics.CodeAnalysis;
|
|
|
|
|
|
2016-10-16 07:29:19 +01:00
|
|
|
namespace DiscImageChef.Decoders.PCMCIA
|
|
|
|
|
{
|
2019-11-25 00:54:38 +00:00
|
|
|
/// <summary>Tuple codes.</summary>
|
2017-12-22 02:04:18 +00:00
|
|
|
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
2016-10-17 04:41:27 +01:00
|
|
|
public enum TupleCodes : byte
|
2016-10-16 07:29:19 +01:00
|
|
|
{
|
2019-11-25 00:54:38 +00:00
|
|
|
/// <summary>Checksum control</summary>
|
|
|
|
|
CISTPL_CHECKSUM = 0x10, /// <summary>End-of-chain</summary>
|
|
|
|
|
CISTPL_END = 0xFF, /// <summary>Indirect access PC Card memory</summary>
|
|
|
|
|
CISTPL_INDIRECT = 0x03, /// <summary>Link-target-control</summary>
|
|
|
|
|
CISTPL_LINKTARGET = 0x13, /// <summary>Longlink to attribute memory</summary>
|
|
|
|
|
CISTPL_LONGLINK_A = 0x11, /// <summary>Longlink to common memory</summary>
|
|
|
|
|
CISTPL_LONGLINK_C = 0x12, /// <summary>Longlink to next chain on a Cardbus PC Card</summary>
|
|
|
|
|
CISTPL_LONGLINK_CB = 0x02, /// <summary>Longlink to function specific chains</summary>
|
|
|
|
|
CISTPL_LONGLINK_MFC = 0x06, /// <summary>No-link to common memory</summary>
|
|
|
|
|
CISTPL_NO_LINK = 0x14, /// <summary>Null tuple</summary>
|
|
|
|
|
CISTPL_NULL = 0x00, /// <summary>Alternate language string</summary>
|
|
|
|
|
CISTPL_ALTSTR = 0x16, /// <summary>Common memory device information</summary>
|
|
|
|
|
CISTPL_DEVICE = 0x01, /// <summary>Attribute memory device information</summary>
|
|
|
|
|
CISTPL_DEVICE_A = 0x17, /// <summary>Other operating conditions information for attribute memory</summary>
|
|
|
|
|
CISTPL_DEVICE_OA = 0x1D, /// <summary>Other operating conditions information for common memory</summary>
|
|
|
|
|
CISTPL_DEVICE_OC = 0x1C, /// <summary>Device geometry information for common memory</summary>
|
|
|
|
|
CISTPL_DEVICEGEO = 0x1E, /// <summary>Device geometry information for attribute memory</summary>
|
|
|
|
|
CISTPL_DEVICEGEO_A = 0x1F, /// <summary>Extended common memory device information</summary>
|
|
|
|
|
CISTPL_EXTDEVIC = 0x09, /// <summary>Function extensions</summary>
|
|
|
|
|
CISTPL_FUNCE = 0x22, /// <summary>Function class identification</summary>
|
|
|
|
|
CISTPL_FUNCID = 0x21, /// <summary>JEDEC programming information for attribute memory</summary>
|
|
|
|
|
CISTPL_JEDEC_A = 0x19, /// <summary>JEDEC programming information for common memory</summary>
|
|
|
|
|
CISTPL_JEDEC_C = 0x18, /// <summary>Manufacturer identification string</summary>
|
|
|
|
|
CISTPL_MANFID = 0x20, /// <summary>Level 1 version/product information</summary>
|
|
|
|
|
CISTPL_VERS_1 = 0x15, /// <summary>BAR for a CardBus PC Card</summary>
|
|
|
|
|
CISTPL_BAR = 0x07, /// <summary>Configuration-table-entry</summary>
|
|
|
|
|
CISTPL_CFTABLE_ENTRY = 0x1B, /// <summary>Configuration-table-entry for a CardBus PC Card</summary>
|
|
|
|
|
CISTPL_CFTABLE_ENTRY_CB = 0x05, /// <summary>Configuration tuple for a 16-bit PC Card</summary>
|
|
|
|
|
CISTPL_CONFIG = 0x1A, /// <summary>Configuration tuple for a CardBus PC Card</summary>
|
|
|
|
|
CISTPL_CONFIG_CB = 0x04, /// <summary>Function state save/restore definition</summary>
|
|
|
|
|
CISTPL_PWR_MGMNT = 0x08, /// <summary>Battery replacement date</summary>
|
|
|
|
|
CISTPL_BATTERY = 0x45, /// <summary>Card initialization date</summary>
|
|
|
|
|
CISTPL_DATE = 0x44, /// <summary>Level 2 version/product information</summary>
|
|
|
|
|
CISTPL_VERS_2 = 0x40, /// <summary>Byte ordering for disk-like partitions</summary>
|
|
|
|
|
CISTPL_BYTEORDER = 0x43, /// <summary>Data recording format for common memory</summary>
|
|
|
|
|
CISTPL_FORMAT = 0x41, /// <summary>Data recording format for attribute memory</summary>
|
|
|
|
|
CISTPL_FORMAT_A = 0x47, /// <summary>Partition geometry</summary>
|
|
|
|
|
CISTPL_GEOMETRY = 0x42, /// <summary>Software interleaving</summary>
|
|
|
|
|
CISTPL_SWIL = 0x23, /// <summary>Partition organization</summary>
|
|
|
|
|
CISTPL_ORG = 0x46, /// <summary>Special purpose</summary>
|
2016-10-17 04:41:27 +01:00
|
|
|
CISTPL_SPCL = 0x90
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-22 02:04:18 +00:00
|
|
|
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
2016-10-17 04:41:27 +01:00
|
|
|
public enum DeviceTypeCodes : byte
|
|
|
|
|
{
|
2019-11-25 00:54:38 +00:00
|
|
|
/// <summary>No device, used to designate a hole</summary>
|
|
|
|
|
DTYPE_NULL = 0, /// <summary>Masked ROM</summary>
|
|
|
|
|
DTYPE_ROM = 1, /// <summary>One-type-programmable ROM</summary>
|
|
|
|
|
DTYPE_OTPROM = 2, /// <summary>UV-Erasable Programmable ROM</summary>
|
|
|
|
|
DTYPE_EPROM = 3, /// <summary>Electronically-Erasable Programmable ROM</summary>
|
|
|
|
|
DTYPE_EEPROM = 4, /// <summary>Flash memory</summary>
|
|
|
|
|
DTYPE_FLASH = 5, /// <summary>Static RAM</summary>
|
|
|
|
|
DTYPE_SRAM = 6, /// <summary>Dynamic RAM</summary>
|
|
|
|
|
DTYPE_DRAM = 7, /// <summary>Function-specific memory address range</summary>
|
|
|
|
|
DTYPE_FUNCSPEC = 13, /// <summary>Extended type follows</summary>
|
2016-10-17 04:41:27 +01:00
|
|
|
DTYPE_EXTEND = 14
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-22 02:04:18 +00:00
|
|
|
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
2016-10-17 04:41:27 +01:00
|
|
|
public enum DeviceSpeedCodes : byte
|
|
|
|
|
{
|
2019-11-25 00:54:38 +00:00
|
|
|
/// <summary>No device</summary>
|
|
|
|
|
DSPEED_NULL = 0, /// <summary>250 ns</summary>
|
|
|
|
|
DSPEED_250NS = 1, /// <summary>200 ns</summary>
|
|
|
|
|
DSPEED_200NS = 2, /// <summary>150 ns</summary>
|
|
|
|
|
DSPEED_150NS = 3, /// <summary>100 ns</summary>
|
|
|
|
|
DSPEED_100NS = 4, /// <summary>Extended speed follows</summary>
|
2016-10-17 04:41:27 +01:00
|
|
|
DSPEED_EXT = 7
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-22 02:04:18 +00:00
|
|
|
[SuppressMessage("ReSharper", "InconsistentNaming")]
|
2016-10-17 04:41:27 +01:00
|
|
|
public enum FunctionCodes : byte
|
|
|
|
|
{
|
2019-11-25 00:54:38 +00:00
|
|
|
MultiFunction = 0x00, Memory = 0x01, Serial = 0x02,
|
|
|
|
|
Parallel = 0x03, FixedDisk = 0x04, Video = 0x05,
|
|
|
|
|
Network = 0x06, AIMS = 0x07, SCSI = 0x08,
|
|
|
|
|
Security = 0x09, Instrument = 0x0A, HighSpeedSerial = 0x0B,
|
|
|
|
|
VendorSpecific = 0xFE
|
2016-10-16 07:29:19 +01:00
|
|
|
}
|
2017-12-19 20:33:03 +00:00
|
|
|
}
|