/* * $Id$ * * Copyright (C) 2003-2013 JNode.org * * 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, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ package org.jnode.partitions.ibm; /** * @author epr */ public enum IBMPartitionTypes { PARTTYPE_EMPTY(0x00, "Empty"), PARTTYPE_UNKNOWN(-1, "Unknown"), PARTTYPE_DOS_FAT12(0x01, "DOS FAT12"), PARTTYPE_XENIX_ROOT(0x02, "XENIX root file system"), PARTTYPE_XENIX_USR(0x03, "XENIX /usr file system (obsolete)"), PARTTYPE_DOS_FAT16_LT32M(0x04, "DOS FAT16 (up to 32M)"), PARTTYPE_DOS_EXTENDED(0x05, "DOS 3.3+ extended partition"), PARTTYPE_DOS_FAT16_GT32M(0x06, "DOS 3.31+ Large File System (FAT16, over 32M)"), PARTTYPE_NTFS(0x07, "NTFS, OS/2 HPFS, Advanced Unix"), PARTTYPE_AIX_BOOTABLE(0x08, "AIX bootable partition, SplitDrive"), PARTTYPE_AIX_DATA(0x09, "AIX data partition, Coherent filesystem"), PARTTYPE_OS2_BOOT_MANAGER(0x0A, "OS/2 Boot Manager, OPUS, Coherent swap partition"), PARTTYPE_WIN95_FAT32(0x0B, "Windows 95 FAT Partition"), PARTTYPE_WIN95_FAT32_LBA(0x0C, "Windows 95 FAT32 Partition (LBA)"), PARTTYPE_WIN95_FAT16_LBA(0x0E, "Windows 95 FAT16 Partition (LBA)"), PARTTYPE_WIN95_FAT32_EXTENDED(0x0F, "Windows 95 Extended"), PARTTYPE_OPUS(0x10, "OPUS"), PARTTYPE_OS2_BOOT_HIDDEN_12(0x11, "OS/2 Boot Manager hidden FAT12 partition"), PARTTYPE_COMPAQ_DIAG(0x12, "Compaq Diagnostics partition"), PARTTYPE_OS2_BOOT_HIDDEN_16_S32(0x14, "(resulted from using Novell DOS 7.0 FDISK to delete Linux Native part), " + "OS/2 Boot Manager hidden FAT16 (up to 32M) partition"), PARTTYPE_OS2_BOOT_HIDDEN_16_O32(0x16, "OS/2 Boot Manager hidden FAT16 (over 32M) partition"), PARTTYPE_OS2_BOOT_HIDDEN_HPFS(0x17, "OS/2 Boot Manager hidden HPFS partition"), PARTTYPE_WINDOWS_SWAP(0x18, "AST special Windows swap file"), PARTTYPE_WILLOWTECH_PHOTON_COS(0x19, "Willowtech Photon coS"), PARTTYPE_WIN95_FAT32_HIDDEN(0x1B, "Hidden Windows 95 FAT Partition"), PARTTYPE_WIN95_FAT32_LBA_HIDDEN(0x1C, "Hidden Windows 95 FAT32 Partition (LBA)"), PARTTYPE_WIN95_FAT16_LBA_HIDDEN(0x1E, "Hidden Windows 95 FAT16 Partition (LBA)"), PARTTYPE_OS2_MANAGER_HIDDEN_CONTAINER(0x1F, "OS/2 Boot Manager Hidden Container"), PARTTYPE_WINDOWS_MOBILE_UPDATE(0x20, "Windows Mobile update XIP"), PARTTYPE_HP_VOLUME_EXPANSION(0x21, "HP Volume Expansion, SpeedStor variant"), PARTTYPE_OXYGEN_EXTENDED_PARTITION_TABLE(0x22, "Oxygen Extended Partition Table"), PARTTYPE_WINDOWS_MOBILE_BOOT(0x23, "Windows Mobile boot XIP"), PARTTYPE_NEC_MSDOS(0x24, "NEC MS-DOS 3.x"), PARTTYPE_WINDOWS_MOBILE_IMGFS(0x25, "Windows Mobile IMGFS"), PARTTYPE_WINDOWS_RE_HIDDEN(0x27, "Windows Recovery Environment (RE) partition"), PARTTYPE_ATHFS(0x2a, "AtheOS File System (AthFS)"), PARTTYPE_SYLLABLESECURE(0x2b, "SyllableSecure (SylStor)"), PARTTYPE_NOS(0x32, "NOS"), PARTTYPE_OS2_JFS(0x35, "OS/2 JFS"), PARTTYPE_THEOS_3_2(0x38, "THEOS 3.2"), PARTTYPE_PLAN_9(0x39, "Plan 9"), PARTTYPE_THEOS_4(0x3a, "THEOS 4"), PARTTYPE_THEOS_4_EXT(0x3b, "THEOS 4 extended partition"), PARTTYPE_POWERQUEST_RECOVERY(0x3C, "PowerQuest PartitionMagic recovery partition"), PARTTYPE_HIDDEN_NETWARE(0x3d, "Hidden NetWare"), PARTTYPE_VENIX80286(0x40, "VENIX 80286"), PARTTYPE_PPC_BOOT(0x41, "PPC_BOOT"), PARTTYPE_SFS_OR_EXTENDED_PARTITION(0x42, "Secure File System, Windows 2000/XP Dynamic extended partition"), PARTTYPE_LINUX_DRDOS(0x43, "Linux native shared with DR DOS 6.0"), PARTTYPE_GOBACK(0x44, "GoBack partition"), PARTTYPE_PRIAM(0x45, "Priam partition"), PARTTYPE_EUMEL_ELAN_x46(0x46, "EUMEL/ELAN partition"), PARTTYPE_EUMEL_ELAN_x47(0x47, "EUMEL/ELAN partition"), PARTTYPE_EUMEL_ELAN_x48(0x48, "EUMEL/ELAN partition"), PARTTYPE_ADAOS(0x4a, "AdaOS Aquila"), PARTTYPE_OBERON(0x4c, "Oberon partition"), PARTTYPE_QNX(0x4d, "QNX"), PARTTYPE_QNX_SECOND(0x4e, "QNX second Part"), PARTTYPE_QNX_THIRD(0x4f, "QNX third Part"), PARTTYPE_DISK_MANAGER_RO(0x50, "Disk Manager, read-only partition"), PARTTYPE_DISK_MANAGER_RW(0x51, "Disk Manager, read/write partition, Novell???"), PARTTYPE_CPM(0x52, "CP/M, Microport System V/386"), PARTTYPE_ONTRACK_AUX(0x53, "Ontrack ?"), PARTTYPE_ONTRACK(0x54, "Ontrack ?"), PARTTYPE_EZ_DRIVE(0x55, "EZ_DRIVE"), PARTTYPE_VFEATURE(0x56, "GoldenBow VFeature"), PARTTYPE_DRIVEPRO(0x57, "StorageSoft DrivePro"), PARTTYPE_PRIAM_EDISK(0x5c, "Priam Edisk"), PARTTYPE_APTI_ALT(0x5d, "APTI alternate partition"), PARTTYPE_APTI_ALT_EXT_x5E(0x5e, "APTI alternate extended partition"), PARTTYPE_APTI_ALT_EXT_x5F(0x5f, "APTI alternate extended partition"), PARTTYPE_SPEEDSTOR(0x61, "SpeedStor"), PARTTYPE_UNIX_SYS_V(0x63, "Unix SysV/386, 386/ix; ach, MtXinu BSD 4.3 on Mach; GNU HURD"), PARTTYPE_NOVELL(0x64, "Novell NetWare"), PARTTYPE_NOVELL_31(0x65, "Novell NetWare (3.11)"), PARTTYPE_NOVELL_SMS(0x66, "Novell NetWare Storage Management Services (SMS)"), PARTTYPE_NOVELL_WOLF_MOUNTAIN(0x67, "Novell Wolf Mountain"), PARTTYPE_NOVELL_ALT(0x68, "Novell NetWare"), PARTTYPE_NOVELL_5(0x69, "Novell NetWare 5"), PARTTYPE_DISK_SECURE(0x70, "DiskSecure Multi-Boot"), PARTTYPE_APTI_ALT_FAT12(0x72, "APTI alternate FAT12 partition"), PARTTYPE_SCRAMDISK(0x74, "Scramdisk"), PARTTYPE_PC_IX(0x75, "PC/IX"), PARTTYPE_M2FS(0x77, "M2FS/M2CS partition"), PARTTYPE_XOSL(0x78, "XOSL bootloader"), PARTTYPE_APTI_ALT_FAT16(0x79, "APTI alternate FAT16 partition"), PARTTYPE_APTI_ALT_FAT16X(0x7A, "APTI alternate FAT6X partition"), PARTTYPE_APTI_ALT_FAT16B(0x7B, "APTI alternate FAT16B partition"), PARTTYPE_APTI_ALT_FAT32X(0x7C, "APTI alternate FAT32X partition"), PARTTYPE_APTI_ALT_FAT32(0x7D, "APTI alternate FAT32 partition"), PARTTYPE_FIX(0x7E, "FIX"), PARTTYPE_ALT_OS(0x7F, "Alternative OS Development Partition Standard"), PARTTYPE_MINIX(0x80, "Minix v1.1 - 1.4a"), PARTTYPE_LINUX(0x81, "Linux; Mitac Advanced Disk Manager"), PARTTYPE_LINUX_SWAP(0x82, "Linux Swap partition"), PARTTYPE_LINUXNATIVE(0x83, "Linux native file system (ext2fs/xiafs)"), PARTTYPE_OS2_HIDING_DOS(0x84, "OS/2-renumbered type 04h partition (related to hiding DOS C: drive);"), PARTTYPE_LINUX_EXTENDED(0x85, "Linux extendet partition"), PARTTYPE_WINNT_FAT16B(0x86, "Windows NT 4.0 fault tolerant FAT16"), PARTTYPE_WINNT_HPFS_NTFS(0x87, "Windows NT 4.0 fault tolerant HPFS/NTFS"), PARTTYPE_LINUX_PLAINTEXT_PARTITION_TABLE(0x88, "Linux plaintext partition table"), PARTTYPE_LINUX_AIRBOOT(0x8A, "Linux AiR-BOOT"), PARTTYPE_WINNT_FAT32(0x8B, "Windows NT 4.0 fault tolerant FAT32"), PARTTYPE_WINNT_FAT32X(0x8C, "Windows NT 4.0 fault tolerant FAT32X"), PARTTYPE_FREEDOS_HIDDEN_FAT12(0x8D, "FreeDOS hidden FAT12"), PARTTYPE_LINUX_LVM(0x8E, "Linux LVM"), PARTTYPE_FREEDOS_HIDDEN_FAT16(0x90, "FreeDOS hidden FAT16"), PARTTYPE_FREEDOS_HIDDEN_PART_CHS(0x91, "FreeDOS hidden extended partition (CHS addressing)"), PARTTYPE_FREEDOS_HIDDEN_FAT16B(0x92, "FreeDOS hidden FAT16B"), PARTTYPE_AMOEBA(0x93, "Amoeba file system"), PARTTYPE_AMOEBA_BAD_BLOCK(0x94, "Amoeba bad block table"), PARTTYPE_EXOPC(0x95, "EXOPC"), PARTTYPE_CHRP(0x96, "CHRP ISO-9660"), PARTTYPE_FREEDOS_HIDDEN_FAT32(0x97, "FreeDOS hidden FAT32"), PARTTYPE_FREEDOS_HIDDEN_FAT32X(0x98, "FreeDOS hidden FAT32X"), PARTTYPE_FREEDOS_HIDDEN_FAT16X(0x9a, "FreeDOS hidden FAT16X"), PARTTYPE_FREEDOS_HIDDEN_EXTENDED_PARTITION(0x9b, "FreeDOS hidden extended partition"), PARTTYPE_FORTHOS(0x9E, "ForthOS"), PARTTYPE_BSD(0x9F, "BSD"), PARTTYPE_THINK_PAD_HIDDEN(0xA0, "IBM Thinkpad hidden partition"), PARTTYPE_HP_VOLUME_EXPANSION_A1(0xA1, "HP Volume Expansion (SpeedStor)"), PARTTYPE_HP_VOLUME_EXPANSION_A3(0xA3, "HP Volume Expansion (SpeedStor)"), PARTTYPE_HP_VOLUME_EXPANSION_A4(0xA4, "HP Volume Expansion (SpeedStor)"), PARTTYPE_FREE_BSD(0xA5, "FreeBSD"), PARTTYPE_OPEN_BSD(0xA6, "OpenBSD"), PARTTYPE_NEXT_STEP(0xA7, "NextStep"), PARTTYPE_APPLE_UFS(0xA8, "Apple UFS"), PARTTYPE_NETBSD(0xA9, "NetBSD"), PARTTYPE_OLIVETTI(0xAA, "Olivetti FAT12"), PARTTYPE_APPLE_BOOT(0xAB, "Apple OSX Boot"), PARTTYPE_ADFS(0xAD, "AFDS"), PARTTYPE_SHAGOS(0xAE, "ShagOS"), PARTTYPE_APPLE_HFS_HFSPLUS(0xAF, "Apple HFS/HFS+"), PARTTYPE_HP_VOLUME_EXPANSION_xB1(0xB1, "HP Volume Expansion (SpeedStor)"), PARTTYPE_QNX_NEUTRINO(0xB2, "QNX Neutrino"), PARTTYPE_HP_VOLUME_EXPANSION_xB3(0xB3, "HP Volume Expansion (SpeedStor)"), PARTTYPE_HP_VOLUME_EXPANSION_xB4(0xB4, "HP Volume Expansion (SpeedStor)"), PARTTYPE_HP_VOLUME_EXPANSION_xB6(0xB6, "HP Volume Expansion (SpeedStor)"), PARTTYPE_BSDI(0xB7, "BSDI file system (secondarily swap)"), PARTTYPE_BSDI_SWAP(0xB8, "BSDI swap partition (secondarily file system)"), PARTTYPE_WINNT_FAT32_MIRROR(0xBB, "Windows NT 4.0 fault tolerant FAT32 mirror"), PARTTYPE_WINNT_FAT32X_MIRROR(0xBC, "Windows NT 4.0 fault tolerant FAT32X mirror"), PARTTYPE_SOLARIS_8_BOOT(0xBE, "Solarsis 8 boot"), PARTTYPE_SOLARIS_X86(0xBF, "Solarsis x86"), PARTTYPE_DR_DOS_SECURED_FAT(0xC0, "DR-DOS secured FAT"), PARTTYPE_DR_DOS_12(0xC1, "DR-DOS 6.0 LOGIN.EXE-secured 12-bit FAT partition;"), PARTTYPE_DR_DOS_16(0xC4, "DR-DOS 6.0 LOGIN.EXE-secured 16-bit FAT partition"), PARTTYPE_DR_DOS_SECURED_PARTITION_CHS(0xC5, "DR-DOS secured extended partition CHS"), PARTTYPE_DR_DOS_HUGE(0xC6, "DR-DOS 6.0 LOGIN.EXE-secured Huge partition"), PARTTYPE_CYRNIX(0xC7, "Cyrnix Boot;"), PARTTYPE_DR_DOS_SECURED_FAT32(0xCB, "DR-DOS secured FAT32"), PARTTYPE_DR_DOS_SECURED_FAT32X(0xCC, "DR-DOS secured FAT32X"), PARTTYPE_DR_DOS_SECURED_FAT16X(0xCE, "DR-DOS secured FAT16X"), PARTTYPE_DR_DOS_SECURED_PARTITION_LBA(0xCF, "DR-DOS secured extended partition LBA"), PARTTYPE_NOVELL_DOS_SECURED_FAT(0xD0, "Novell Multiuser DOS secured FAT"), PARTTYPE_NOVELL_DOS_SECURED_FAT12(0xD1, "Novell Multiuser DOS secured FAT12"), PARTTYPE_NOVELL_DOS_SECURED_FAT16(0xD4, "Novell Multiuser DOS secured FAT16"), PARTTYPE_NOVELL_DOS_SECURED_PARTITION_CHS(0xD5, "Novell Multiuser DOS secured partition CHS"), PARTTYPE_NOVELL_DOS_SECURED_FAT16B(0xD6, "Novell Multiuser DOS secured FAT16B"), PARTTYPE_NON_FS(0xDA, "Non FS Data;"), PARTTYPE_CPM_DOS(0xDB, "CP/M, Concurrent CP/M, Concurrent DOS; CTOS (Convergent Technologies OS)"), PARTTYPE_DELL_UTILITY(0xDE, "DELL Utility partition"), PARTTYPE_BOOT_IT(0xDF, "Boot it"), PARTTYPE_SPEEDSTOR_FAT_12(0xE1, "SpeedStor 12-bit FAT extended partition"), PARTTYPE_DOS_R_O(0xE2, "Readonly Dos Partition"), PARTTYPE_DOS_R_O_ALT(0xE3, "Readonly Dos Partition"), PARTTYPE_SPEEDSTOR_FAT_16(0xE4, "SpeedStor 16-bit FAT extended partition"), PARTTYPE_TANDY_FAT(0xE5, "Tandy FAT12/16"), PARTTYPE_LINUX_LUKS(0xE8, "Linux Unified Key Setup"), PARTTYPE_BEOS_FS(0xEB, "BeOS BFS"), PARTTYPE_SKYFS(0xEC, "SkyOS SkyFS"), PARTTYPE_EFI_GPT_HYBRID(0xED, "EFI GPT hybrid MBR"), PARTTYPE_EFI_GPT(0xEE, "EFI GPT protective MBR"), PARTTYPE_EFI_FAT(0xEF, "EFI system partition FAT12/16/32"), PARTTYPE_LINUX_PA_RISK(0xF0, "Linux PA Risk"), PARTTYPE_SPEEDSTORE_A(0xF1, "Speedstore ???"), PARTTYPE_DOS3_3_SECONDARY(0xF2, "DOS 3.3+ secondary"), PARTTYPE_SPEEDSTORE_B(0xF4, "Speedstore ???"), PARTTYPE_VMWARE_VMFS(0xFB, "VMware VMFS"), PARTTYPE_VMWARE_SWAP(0xFC, "VMware swap"), PARTTYPE_LINUX_RAID(0xFD, "Linux Raid"), PARTTYPE_LANSTEP(0xFE, "LANstep"), PARTTYPE_XENIX_BAD_BLOCK(0xFF, "Xenix bad block table"); public static IBMPartitionTypes valueOf(int code) { for (IBMPartitionTypes type : IBMPartitionTypes.values()) { if (type.getCode() == code) { return type; } } throw new IllegalArgumentException(code + " isn't a partition code"); } private final int code; private final String name; private IBMPartitionTypes(int code, String name) { this.code = code; this.name = name; } public int getCode() { return code; } public String getName() { return name; } public String toString() { return Integer.toHexString(code) + " - " + name; } }