Files
marechai/Marechai.Database/Enums.cs

542 lines
22 KiB
C#

/******************************************************************************
// MARECHAI: Master repository of computing history artifacts information
// ----------------------------------------------------------------------------
//
// Author(s) : Natalia Portillo <claunia@claunia.com>
//
// --[ 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 © 2003-2020 Natalia Portillo
*******************************************************************************/
using System;
using System.ComponentModel.DataAnnotations;
// ReSharper disable UnusedMember.Global
// ReSharper disable InconsistentNaming
namespace Marechai.Database
{
public enum NewsType
{
NewComputerInDb = 1, NewConsoleInDb = 2, NewComputerInCollection = 3,
NewConsoleInCollection = 4, UpdatedComputerInDb = 5, UpdatedConsoleInDb = 6,
UpdatedComputerInCollection = 7, UpdatedConsoleInCollection = 8, NewMoneyDonation = 9
}
public enum StatusType
{
[Display(Name = "Unknown")]
Unknown = 0, [Display(Name = "Tested good")]
TestedGood = 1, [Display(Name = "Not tested")]
NotTested = 2, [Display(Name = "Tested bad")]
TestedBad = 3
}
public enum CompanyStatus
{
/// <summary>Status is unknown or not set</summary>
Unknown = 0,
/// <summary>Company is still existing</summary>
Active = 1,
/// <summary>Company was sold, totally or partially</summary>
Sold = 2,
/// <summary>Company merged with another company to make yet another company</summary>
Merged = 3,
/// <summary>Company filled for bankruptcy</summary>
Bankrupt = 4,
/// <summary>Company ceased operations for reasons different to bankruptcy</summary>
Defunct = 5,
/// <summary>Company renamed possibly with a change of intentions</summary>
Renamed = 6
}
public enum MachineType
{
/// <summary>Unknown machine type, should not happen</summary>
Unknown = 0,
/// <summary>Computer</summary>
Computer = 1,
/// <summary>Videogame console</summary>
Console = 2
}
public enum MemoryType
{
/// <summary>Unknown memory type</summary>
Unknown = 0,
/// <summary>Dynamic RAM</summary>
DRAM = 1,
/// <summary>Fast page mode DRAM</summary>
FPM = 2,
/// <summary>Extended data out DRAM</summary>
EDO = 3,
/// <summary>Dual-ported video DRAM</summary>
VRAM = 4,
/// <summary>Synchronous DRAM</summary>
SDRAM = 5,
/// <summary>Double data rate SDRAM</summary>
DDR = 6,
/// <summary>Double data rate SDRAM v2</summary>
DDR2 = 7,
/// <summary>Double data rate SDRAM v3</summary>
DDR3 = 8,
/// <summary>Double data rate SDRAM v4</summary>
DDR4 = 9,
/// <summary>Rambus DRAM</summary>
RDRAM = 10,
/// <summary>Synchronous graphics RAM</summary>
SGRAM = 11,
/// <summary>Pseudostatic RAM</summary>
PSRAM = 12,
/// <summary>Static RAM</summary>
SRAM = 13,
/// <summary>Read-only memory</summary>
ROM = 14,
/// <summary>Programmable ROM</summary>
PROM = 15,
/// <summary>Erasable programmable ROM</summary>
EPROM = 16,
/// <summary>Electronically-erasable programmable ROM</summary>
EEPROM = 17,
/// <summary>NAND flash</summary>
NAND = 18,
/// <summary>NOR flash</summary>
NOR = 19,
/// <summary>Resistive RAM</summary>
ReRAM = 20,
/// <summary>Conductive-bridging RAM</summary>
CBRAM = 21,
/// <summary>Domain-wall memory</summary>
DWM = 22,
/// <summary>Nano-RAM</summary>
NanoRAM = 23,
/// <summary>Millipede memory</summary>
Millipede = 24,
/// <summary>Floating Junction Gate RAM</summary>
FJG = 25,
/// <summary>Punched paper</summary>
PunchedPaper = 26,
/// <summary>Drum memory</summary>
DrumMemory = 27,
/// <summary>Magnetic-core</summary>
MagneticCore = 28,
/// <summary>Plated wire memory</summary>
PlatedWire = 29,
/// <summary>Core rope memory</summary>
CoreRope = 30,
/// <summary>Thin-film memory</summary>
ThinFilm = 31,
/// <summary>Twistor memory</summary>
Twistor = 32,
/// <summary>Bubble memory</summary>
Bubble = 33
}
public enum MemoryUsage
{
/// <summary>Unknown usage</summary>
Unknown = 0,
/// <summary>
/// Contains a boot loader (usually read-only) whose only function is to load the next memory (firmware or
/// cartridge)
/// </summary>
Bootloader = 1,
/// <summary>
/// Contains hardware initializing, some (or many) low level calls and code to load software from secondary
/// storage
/// </summary>
Firmware = 2,
/// <summary>Memory used by software running on the machine</summary>
Work = 3,
/// <summary>Memory used by the graphics processing units</summary>
Video = 4,
/// <summary>Memory used by the sound synthesizers</summary>
Sound = 5,
/// <summary>Memory used to store wave tables</summary>
Wavetable = 6,
/// <summary>Memory used as a buffer from secondary storage</summary>
StorageBuffer = 7,
/// <summary>Memory used to save arbitrary data and possible also configuration</summary>
Save = 8,
/// <summary>Memory used to save only configuration</summary>
Configuration = 9,
/// <summary>
/// Memory accessible directly to any of the processors in the machine, including graphics processors and sound
/// synthesizers
/// </summary>
Unified = 10
}
public enum StorageType
{
/// <summary>Contains an empty interface for user connection</summary>
Empty = -1,
/// <summary>Unknown</summary>
Unknown = 0,
/// <summary>Unknown magneto-optical</summary>
MagnetoOptical = 1,
/// <summary>Generic hard disk</summary>
HardDisk = 2,
/// <summary>Microdrive type hard disk</summary>
Microdrive = 3,
/// <summary>Zoned hard disk</summary>
ZonedHardDisk = 4,
/// <summary>USB flash drives</summary>
FlashDrive = 5,
/// <summary>CompactDisc</summary>
CompactDisc = 6,
/// <summary>Double-Density CompactDisc (Purple Book)</summary>
DDCD = 7,
/// <summary>120mm, Phase-Change, 1298496 sectors, 512 bytes/sector, PD650, ECMA-240, ISO 15485</summary>
PD650 = 8,
/// <summary>DVD</summary>
Dvd = 9,
/// <summary>DVD-RAM (cartridge only)</summary>
DVDRAM = 10,
/// <summary>HD DVD</summary>
HDDVDROM = 11,
/// <summary>Blu-ray Disc</summary>
Bluray = 12,
/// <summary>Enhanced Versatile Disc</summary>
EVD = 13,
/// <summary>Forward Versatile Disc</summary>
FVD = 14,
/// <summary>Holographic Versatile Disc</summary>
HVD = 15,
/// <summary>China Blue High Definition</summary>
CBHD = 16,
/// <summary>High Definition Versatile Multilayer Disc</summary>
HDVMD = 17,
/// <summary>Versatile Compact Disc High Density</summary>
VCDHD = 18,
/// <summary>Stacked Volumetric Optical Disc</summary>
SVOD = 19,
/// <summary>Five Dimensional disc</summary>
FDDVD = 20,
/// <summary>Pioneer LaserDisc</summary>
LD = 21,
/// <summary>Pioneer LaserDisc data</summary>
LDROM = 22, LDROM2 = 23, LVROM = 24, MegaLD = 254,
/// <summary>Sony Hi-MD</summary>
HiMD = 26,
/// <summary>Sony MiniDisc</summary>
MD = 27, MDData = 28, MDData2 = 29,
/// <summary>5.25", Phase-Change, 1834348 sectors, 8192 bytes/sector, Ultra Density Optical, ECMA-350, ISO 17345</summary>
UDO = 30,
/// <summary>5.25", Phase-Change, 3669724 sectors, 8192 bytes/sector, Ultra Density Optical 2, ECMA-380, ISO 11976</summary>
UDO2 = 31, PlayStationMemoryCard = 32, PlayStationMemoryCard2 = 33,
/// <summary>Sony PlayStation game CD</summary>
PS1CD = 34,
/// <summary>Sony PlayStation 2 game CD</summary>
PS2CD = 35,
/// <summary>Sony PlayStation 2 game DVD</summary>
PS2DVD = 36,
/// <summary>Sony PlayStation 3 game DVD</summary>
PS3DVD = 37,
/// <summary>Sony PlayStation 3 game Blu-ray</summary>
PS3BD = 38,
/// <summary>Sony PlayStation 4 game Blu-ray</summary>
PS4BD = 39,
/// <summary>Sony PlayStation Portable Universal Media Disc (ECMA-365)</summary>
UMD = 40,
/// <summary>Microsoft X-box Game Disc</summary>
XGD = 41,
/// <summary>Microsoft X-box 360 Game Disc</summary>
XGD2 = 42,
/// <summary>Microsoft X-box 360 Game Disc</summary>
XGD3 = 43,
/// <summary>Microsoft X-box One Game Disc</summary>
XGD4 = 44,
/// <summary>Sega MegaCD</summary>
MEGACD = 45,
/// <summary>Sega Saturn disc</summary>
SATURNCD = 46,
/// <summary>Sega/Yamaha Gigabyte Disc</summary>
GDROM = 47, SegaCard = 48,
/// <summary>PC-Engine / TurboGrafx cartridge</summary>
HuCard = 49,
/// <summary>PC-Engine / TurboGrafx CD</summary>
SuperCDROM2 = 50,
/// <summary>Atari Jaguar CD</summary>
JaguarCD = 51,
/// <summary>3DO CD</summary>
ThreeDO = 52,
/// <summary>NEC PC-FX</summary>
PCFX = 53,
/// <summary>NEO-GEO CD</summary>
NeoGeoCD = 54,
/// <summary>8" floppy</summary>
Floppy = 55,
/// <summary>5.25" floppy</summary>
Minifloppy = 56,
/// <summary>3.5" floppy</summary>
Microfloppy = 57,
/// <summary>5.25", DS, ?D, ?? tracks, ?? spt, 512 bytes/sector, GCR, opposite side heads, aka Twiggy</summary>
AppleFileWare = 58, Bernoulli = 59, Bernoulli2 = 60, Ditto = 61,
DittoMax = 62, Jaz = 63, Jaz2 = 64,
PocketZip = 65, REV120 = 66, REV35 = 67,
REV70 = 68, ZIP100 = 69, ZIP250 = 70,
ZIP750 = 71, CompactCassette = 72, Data8 = 73,
MiniDV = 74, CFast = 75, CompactFlash = 76,
CompactFlashType2 = 77, EZ135 = 78, EZ230 = 79,
Quest = 80, SparQ = 81, SQ100 = 82,
SQ200 = 83, SQ300 = 84, SQ310 = 85,
SQ327 = 86, SQ400 = 87, SQ800 = 88,
SQ1500 = 89, SQ2000 = 90, SyJet = 91,
FamicomGamePak = 92, GameBoyAdvanceGamePak = 93, GameBoyGamePak = 94,
GOD = 95, N64DD = 96, N64GamePak = 97,
NESGamePak = 98, Nintendo3DSGameCard = 99, NintendoDiskCard = 100,
NintendoDSGameCard = 101, NintendoDSiGameCard = 102, SNESGamePak = 103,
SNESGamePakUS = 104, WOD = 105, WUOD = 106,
SwitchGameCard = 107, MemoryStick = 108, MemoryStickDuo = 109,
MemoryStickMicro = 110, MemoryStickPro = 111, MemoryStickProDuo = 112,
microSD = 113, miniSD = 114, SecureDigital = 115,
MMC = 116, MMCmicro = 117, RSMMC = 118,
MMCplus = 118, MMCmobile = 119, eMMC = 120,
MO120 = 121, MO90 = 122, MO300 = 123,
MO356 = 124, CompactFloppy = 125, DemiDiskette = 126,
/// <summary>3.5", 652 tracks, 2 sides, 512 bytes/sector, Floptical, ECMA-207, ISO 14169</summary>
Floptical = 127, HiFD = 128, QuickDisk = 129, UHD144 = 130,
VideoFloppy = 131, Wafer = 132, ZXMicrodrive = 133,
BeeCard = 134, Borsu = 135, DataStore = 136,
MiniCard = 137, Orb = 138, Orb5 = 139,
SmartMedia = 140, xD = 141, XQD = 142,
DataPlay = 143, LS120 = 144, LS240 = 145,
FD32MB = 146, RDX = 147, PunchedCard = 148
}
public enum StorageInterface
{
Unknown = 0, ACSI = 1, ATA = 2,
XTA = 3, ESDI = 4, SCSI = 5,
USB = 6, FireWire = 7, SASI = 8,
ST506 = 9, IPI = 10, SMD = 11,
SATA = 12, SSA = 13, DSSI = 14,
HIPPI = 15, SAS = 16, FC = 17,
PCIe = 18, M2 = 19, SataExpress = 20
}
public enum ColorSpace : ushort
{
[Display(Name = "sRGB")]
Srgb = 1, [Display(Name = "Adobe RGB")]
AdobeRgb = 2, [Display(Name = "Wide Gamut RGB")]
WideGamutRgb = 4093, [Display(Name = "ICC Profile")]
IccProfile = 65534, [Display(Name = "Uncalibrated")]
Uncalibrated = 65535
}
public enum Contrast : ushort
{
Normal = 0, Low = 1, High = 2
}
public enum ExposureMode : ushort
{
Auto = 0, Manual = 1, [Display(Name = "Auto bracket")]
AutoBracket = 2
}
public enum ExposureProgram : ushort
{
[Display(Name = "Not Defined")]
Undefined = 0, [Display(Name = "Manual")]
Manual = 1, [Display(Name = "Program AE")]
ProgramAe = 2, [Display(Name = "Aperture-priority AE")]
ApAe = 3, [Display(Name = "Shutter speed priority AE")]
ShutterAe = 4, [Display(Name = "Creative (Slow speed)")]
Creative = 5, [Display(Name = "Action (High speed)")]
Action = 6, [Display(Name = "Portrait")]
Portrait = 7, [Display(Name = "Landscape")]
Landscape = 8, [Display(Name = "Bulb")]
Bulb = 9
}
public enum Flash : ushort
{
[Display(Name = "No Flash")]
None = 0, [Display(Name = "Fired")]
Fired = 1, [Display(Name = "Fired, Return not detected")]
FiredNoReturn = 5, [Display(Name = "Fired, Return detected")]
FiredReturn = 7, [Display(Name = "On, Did not fire")]
OnDidNotFire = 8, [Display(Name = "On, Fired")]
OnFired = 9, [Display(Name = "On, Return not detected")]
OnNoReturn = 13, [Display(Name = "On, Return detected")]
OnReturn = 15, [Display(Name = "Off, Did not fire")]
OffDidNotFire = 16, [Display(Name = "Off, Did not fire, Return not detected")]
OffDidNotFireNoReturn = 20, [Display(Name = "Auto, Did not fire")]
AutoDidNotFire = 24, [Display(Name = "Auto, Fired")]
AutoFired = 25, [Display(Name = "Auto, Fired, Return not detected")]
AutoFiredNoReturn = 29, [Display(Name = "Auto, Fired, Return detected")]
AutoFiredReturn = 31, [Display(Name = "No flash function")]
NoFlash = 32, [Display(Name = "Off, No flash function")]
OffNoFlash = 48, [Display(Name = "Fired, Red-eye reduction")]
FiredRedEye = 65, [Display(Name = "Fired, Red-eye reduction, Return not detected")]
FiredRedEyeNoReturn = 69, [Display(Name = "Fired, Red-eye reduction, Return detected")]
FiredRedEyeReturn = 71, [Display(Name = "On, Red-eye reduction")]
OnRedEye = 73, [Display(Name = "On, Red-eye reduction, Return not detected")]
OnRedEyeNoReturn = 77, [Display(Name = "On, Red-eye reduction, Return detected")]
OnRedEyeReturn = 79, [Display(Name = "Off, Red-eye reduction")]
OffRedEye = 80, [Display(Name = "Auto, Did not fire, Red-eye reduction")]
AutoNotFireRedEye = 88, [Display(Name = "Auto, Fired, Red-eye reduction")]
AutoFiredRedEye = 89, [Display(Name = "Auto, Fired, Red-eye reduction, Return not detected")]
AutoFiredRedEyeNoReturn = 93, [Display(Name = "Auto, Fired, Red-eye reduction, Return detected")]
AutoFiredRedEyeReturn = 95
}
public enum LightSource : ushort
{
[Display(Name = "Unknown")]
Unknown = 0, [Display(Name = "Daylight")]
Daylight = 1, [Display(Name = "Fluorescent")]
Fluorescent = 2, [Display(Name = "Tungsten (Incandescent)")]
Incandescent = 3, [Display(Name = "Flash")]
Flash = 4, [Display(Name = "Fine Weather")]
FineWeather = 9, [Display(Name = "Cloudy")]
Cloudy = 10, [Display(Name = "Shade")]
Shade = 11, [Display(Name = "Daylight Fluorescent")]
DaylightFluorescent = 12, [Display(Name = "Day White Fluorescent")]
DayWhiteFluorescent = 13, [Display(Name = "Cool White Fluorescent")]
CoolWhiteFluorescent = 14, [Display(Name = "White Fluorescent")]
WhiteFluorescent = 15, [Display(Name = "Warm White Fluorescent")]
WarmWhiteFluorescent = 16, [Display(Name = "Standard Light A")]
StandardLightA = 17, [Display(Name = "Standard Light B")]
StandardLightB = 18, [Display(Name = "Standard Light C")]
StandardLightC = 19, [Display(Name = "D55")]
D55 = 20, [Display(Name = "D65")]
D65 = 21, [Display(Name = "D75")]
D75 = 22, [Display(Name = "D50")]
D50 = 23, [Display(Name = "ISO Studio Tungsten")]
ISOStudioTungsten = 24, [Display(Name = "Other")]
Other = 255
}
public enum MeteringMode : ushort
{
[Display(Name = "Unknown")]
Unknown = 0, [Display(Name = "Average")]
Average = 1, [Display(Name = "Center-weighted average")]
CenterWeightedAverage = 2, [Display(Name = "Spot")]
Spot = 3, [Display(Name = "Multi-spot")]
MultiSpot = 4, [Display(Name = "Multi-segment")]
MultiSegment = 5, [Display(Name = "Partial")]
Partial = 6, [Display(Name = "Other")]
Other = 255
}
public enum Orientation : ushort
{
[Display(Name = "Horizontal (normal)")]
Horizontal = 1, [Display(Name = "Mirror horizontal")]
MirrorHorizontal = 2, [Display(Name = "Rotate 180")]
Rotate180 = 3, [Display(Name = "Mirror vertical")]
MirrorVertical = 4, [Display(Name = "Mirror horizontal and rotate 270 CW")]
MirrorHorizontalAndRotate270CW = 5, [Display(Name = "Rotate 90 CW")]
Rotate90CW = 6, [Display(Name = "Mirror horizontal and rotate 90 CW")]
MirrorHorizontalAndRotate90CW = 7, [Display(Name = "Rotate 270 CW")]
Rotate270CW = 8
}
public enum ResolutionUnit : ushort
{
None = 1, Inches = 2, Centimeters = 3
}
public enum Saturation : ushort
{
Normal = 0, Low = 1, High = 2
}
public enum SceneCaptureType : ushort
{
Standard = 0, Landscape = 1, Portrait = 2,
Night = 3
}
public enum SensingMethod : ushort
{
[Display(Name = "Not defined")]
Undefined = 1, [Display(Name = "One-chip color area")]
OneChipColorArea = 2, [Display(Name = "Two-chip color area")]
TwoChipColorArea = 3, [Display(Name = "Three-chip color area")]
ThreeChipColorArea = 4, [Display(Name = "Color sequential area")]
ColorSequentialArea = 5, [Display(Name = "Trilinear")]
Trilinear = 7, [Display(Name = "Color sequential linear")]
ColorSequentialLinear = 8
}
public enum SubjectDistanceRange : ushort
{
Unknown = 0, Macro = 1, Close = 2,
Distant = 3
}
public enum WhiteBalance : ushort
{
Auto = 0, Manual = 1
}
public enum Sharpness : ushort
{
Normal = 0, Low = 1, High = 2
}
public enum AuditType : byte
{
None = 0, Created = 1, Updated = 2,
Deleted = 3
}
[Flags]
public enum DumpStatus : ulong
{
Unknown = 0, Cracked = 1 << 0, Fixed = 1 << 1,
Hacked = 1 << 2, Modified = 1 << 3, Pirated = 1 << 4,
Trained = 1 << 5, Translated = 1 << 6, Overdumped = 1 << 7,
Underdumped = 1 << 8, Infected = 1 << 9, Damaged = 1 << 10,
Verified = 1 << 11, MissingData = 1 << 12, MissingNonRequiredData = 1 << 13,
MissingEssentialData = 1 << 14, DamagedSubchannel = 1 << 15
}
[Flags]
public enum SubchannelStatus : byte
{
None = 0, P = 1 << 0, Q = 1 << 1,
R = 1 << 2, S = 1 << 3, T = 1 << 4,
U = 1 << 5, V = 1 << 6, W = 1 << 7
}
public enum DistributionMode : uint
{
Unknown = 0, Retail = 1, Bundle = 2,
Oem = 3
}
public enum MasteringTextType : byte
{
Unknown = 0, LotNumber = 1, MasteringSid = 2,
MouldSid = 3, MasteringCode = 4, Barcode = 5,
Toolstamp = 6
}
public enum DocumentScanType : uint
{
Page = 0, Cover = 1, BackCover = 2,
TableOfContents = 3, Index = 4, CopyrightPage = 5
}
}