ееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееFOO COMЂ FOO COMЂ !FOO COMЂ"#$%&'()*+,-./01FOO COMЂ23456789:;<=>?@Aееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееare stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional) .br Directory .brееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееscribed by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectors .br Block size FOO COMBCееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk space, there are non-bootable formееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее.br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .RE A block is the smallest allееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for system tracks. Note that there isееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specifiееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее.\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16ееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this bitmap in core from the directoееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееcation is not stored on the disk and there are lots of formats. Accessing a block is performed by accessing its sectors, which ееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format is dery. .LP The directory is a sequence of directory entries (also called extents), which have the following structure: .RS .sp 1 by date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which contains the update and create tiary 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory entry, if it contains more blockon byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.2, but (you probably guessed tte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks . format .sp .RE The highest bit of each character of the file name and extension is used as attribute. The attributes have the me stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last dir is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectors .br Blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered sequentially (extent number). hat by now) there is a patch and some free CP/M clones support them without any patches. .LP The wheel byte is (by default) the br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte record count following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS,ectory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytes unused .br 8 bytes time stamp size .br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .RE A block is the smalle One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but thememory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmlfor this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacity less than 256 K, 8 li ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-only commands (Background for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of the creation of a file. Eachst allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format sre is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not supports (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "Januttle-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bit ASCII character but: \fB< >er II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system file .sp Extensipecification is not stored on the disk and there are lots of formats. Accessing a block is performed by accessing its sectors, ut there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not s, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bit ASCII character but: grounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system file .sp Eirectory. .LP The directory is a sequence of directory entries (also called extents), which have the following structure: .RS .s Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional) .br Directoupport time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which contains the update and cre\fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory entry, if it contains morextension byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.2, but (you probably guep 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blin BCD format .sp .RE The highest bit of each character of the file name and extension is used as attribute. The attributes havry .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk space, there are non-bootablate time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-la blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered sequentially (extent numssed that by now) there is a patch and some free CP/M clones support them without any patches. .LP The wheel byte is (by defaultanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte record e the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: public file (e formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for system tracks. Note that thst directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytes unused .br 8 bytes timeber). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, b) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .Icount for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacity less than 256 KP2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-only commands (Backere is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this bitmap in core from the d stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of the creation of a file.R cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5ecord count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacity less thanhat there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this bitmap in core froms time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of the creation of armat specification is not stored on the disk and there are lots of formats. Accessing a block is performed by accessing its secn15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bit ASCII character the directory. .LP The directory is a sequence of directory entries (also called extents), which have the following structure: file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte mtors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional) .br D not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which contains the update aformat is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectors .br but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory entry, if it contain.RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded winute in BCD format .sp .RE The highest bit of each character of the file name and extension is used as attribute. The attributirectory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk space, there are non-bnd create time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for th Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .RE A block is the s more blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered sequentially (exteith blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte res have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: public ootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for system tracks. Note tird-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytes unused .br 8 bytesmallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this font number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(efile (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-only commands non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for system tracks. s the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, t (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .THbyte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacity les (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system fileNote that there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this bitmap in corhis format specification is not stored on the disk and there are lots of formats. Accessing a block is performed by accessing i 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2. CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/Ms than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bit ASCII cha .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.2, but (you probabe from the directory. .LP The directory is a sequence of directory entries (also called extents), which have the following structs sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional)2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which contains the up disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectoracter but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory entry, if it cly guessed that by now) there is a patch and some free CP/M clones support them without any patches. .LP The wheel byte is (by dture: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, pa .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk space, there aredate and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp rs .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .RE A block iontains more blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered sequentiallyefault) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (dded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytes unused .br sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .RE A b (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfsme, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes unused ublic file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-only core are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for system tr8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of the creatiolock is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunat.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(.br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacimmands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: systeacks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this bitmap n of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 ely, this format specification is not stored on the disk and there are lots of formats. Accessing a block is performed by accesen .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Eacty less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bit ASCm file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.2, but (you in core from the directory. .LP The directory is a sequence of directory entries (also called extents), which have the followingbyte minute in BCD format .sp .RE The highest bit of each character of the file name and extension is used as attribute. The atsing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (opth CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number ofII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory entry, iprobably guessed that by now) there is a patch and some free CP/M clones support them without any patches. .LP The wheel byte is structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file natributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: pional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk space, thef it contains more blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered sequen (you probably guessed that by now) there is a patch and some free CP/M clones support them without any patches. .LP The wheel bThe attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File name byts (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disk spacstamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytes unuseber of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system tracks .sp .tially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user numberyte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALSO" .Ie 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-oe, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space for sysd .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of the cRE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfos from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .if t .dsnly commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1:tem tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds this breation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format rtunately, this format specification is not stored on the disk and there are lots of formats. Accessing a block is performed byP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which contains en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTI system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.2, butitmap in core from the directory. .LP The directory is a sequence of directory entries (also called extents), which have the fol.br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extension is used as attribute. accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp System trackthe update and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytes time ON Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .br Numlowing structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extension is used as attribtains the update and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8 bytesCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of tracks .try, if it contains more blocks than an extent can hold. In this case, more extents are allocated and each of them is numbered 2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them without any patches. .LP The wile name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 bytes uute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br File na time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2 bytesbr Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system trackssequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports user heel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "SEE ALnused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values if disk me byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), backgr unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update and of .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes.numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without patches.SO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en - .ifcapacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printable 7 bound-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extension b the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD f Unfortunately, this format specification is not stored on the disk and there are lots of formats. Accessing a block is perfor .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, which con t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .SH DESit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directory enyte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supported by CP/M 2.med by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp Systemtches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entry, while 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one directsion byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supported by Che following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 b BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extension is used as tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to save disch contains the update and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte status .br 8ory entry, if it contains more blocks than an extent can hold. In this case, more extents are allocated and each of them is numP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them without any patches. .LPytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .br 2 battribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II) .br Fk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the space f bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entry .br 2bered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only supports The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed. .SH "ytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte values ifile name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSDOS), or system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M builds bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last update user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 without paSEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n .ds en disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any printabbackground-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br Extenthis bitmap in core from the directory. .LP The directory is a sequence of directory entries (also called extents), which have tand of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hour in - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system format .ues if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of any puilds this bitmap in core from the directory. .LP The directory is a sequence of directory entries (also called extents), which pdate and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 byte hperformed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .RS .sp out patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directory entrSH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number of trrintable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more than one have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestamps) .our in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extension is usSystem tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In order to say, which contains the update and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte statusacks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved system directory entry, if it contains more blocks than an extent can hold. In this case, more extents are allocated and each of them br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this file .ed as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgrounder II)ve disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludes the s .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directory entrytracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and 16384 is numbered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 only subr 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 byte val .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date stamp (ZSpace for system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first time, CP/M b .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the last ubytes. Unfortunately, this format specification is not stored on the disk and there are lots of formats. Accessing a block is pports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en31 withDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-only .br the space for system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first time, 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lots of formats. Accessing a blonly supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0\*(en3.ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file system fote values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consist of Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not supporteCP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory entries (also called extents), ck is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three areas: .R1 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth directorrmat .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br Number any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use more thad by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them without any patchewhich have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> timestaS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. In ordery entry, which contains the update and create time stamps for the files in the previous three directory entries: .RS .sp 1 byte of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of reserved sn one directory entry, if it contains more blocks than an extent can hold. In this case, more extents are allocated and each ofs. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be executed.mps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number for this to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always excludesstatus .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last directoryystem tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 8192 and them is numbered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/M 2.2 o .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en .if n file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers (16 by entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of the rved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 4096, 819cuted. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not know \(en this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block pointers mp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: read-oncludes the space for system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the first last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 .br 1 2 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lots of formats. Accessing.if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and file sys(16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension may consly .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are not sutime, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory entries (also called extebyte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extension a block is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains three aretem format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytes .br ist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may use mopported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them without any nts), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 \(-> t is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backgroundas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itself. InNumber of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number of resere than one directory entry, if it contains more blocks than an extent can hold. In this case, more extents are allocated and epatches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may be exeimestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent number forer II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: date sta order to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP always exach of them is numbered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .LP CP/Mt any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commands may grounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name byte 2: daf. In order to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\fP alwectory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dates of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 2048, 409 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones support 0be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do not knowte stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension byte 0: rays excludes the space for system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive for the f the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-01-1978 6, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lots of formats. Acc\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fourth di \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk and fiead-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number) are first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory entries (also calle.br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name and extessing a block is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contains thrrectory entry, which contains the update and create time stamps for the files in the previous three directory entries: .RS .sp 1le system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size in bytenot supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them withoud extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 0x21 ension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte (Backee areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/M itsel byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-last dirs .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Number o\(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extent numbnd extension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set wheel byte .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for second-lan bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew .br Nu and each of them is numbered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 K. .Lwithout any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged commander for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes block poi (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File name bytest directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the two dmber of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 1024, 204P CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clones sups may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs which do nonters (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extension ma 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extension bytates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days since 01-018, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lots of formatsport 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in each fout know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/M disk y consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A file may e 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user number-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file name a. Accessing a block is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk contairth directory entry, which contains the update and create time stamps for the files in the previous three directory entries: .RSand file system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector size iuse more than one directory entry, if it contains more blocks than an extent can hold. In this case, more extents are allocated) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support them ns three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader and CP/Mch fourth directory entry, which contains the update and create time stamps for the files in the previous three directory entriee may use more than one directory entry, if it contains more blocks than an extent can hold. In this case, more extents are allnumber) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones support 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte extenname and extension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires set whee itself. In order to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capacity\s: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp for secocated and each of them is numbered sequentially (extent number). One extent may store up to 128 records, thus using at most 16 them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-privileged ct number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytes blol byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br File namfP always excludes the space for system tracks. Note that there is no bitmap or list for free blocks. When accessing a drive foond-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists of the K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/M clonommands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs whichck pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and extense byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Extensir the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory entries (also two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) days sincees support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are stored in ea do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \- CP/Mion may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP A filon byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under each user called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, used and 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of the file disk and file system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Sector extension may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blanks. .LP (also called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user number, us since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character of thecontains three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loader an in each fourth directory entry, which contains the update and create time stamps for the files in the previous three directory size in bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sector skew A file may use more than one directory entry, if it contains more blocks than an extent can hold. In this case, more extents aed and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br 1 byte file name and extension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requires sed CP/M itself. In order to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdisk capentries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time stamp f.br Number of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes of 102re allocated and each of them is numbered sequentially (extent number). One extent may store up to 128 records, thus using at m extent number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br 16 bytt wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) .br Fiacity\fP always excludes the space for system tracks. Note that there is no bitmap or list for free blocks. When accessing a dror second-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp consists 4, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lots of fost 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some free CP/es block pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File name and le name byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) .br Eive for the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory entriesof the two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endian) daysormats. Accessing a block is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/M disk M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are storedxtension byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible under eachg a drive for the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of directory es of formats. Accessing a block is performed by accessing its sectors, which are stored with the given logical skew. .LP A CP/Mee CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stamps are - CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RS .sp Se and extension may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded with blank user number) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M clones sntries (also called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> user numb disk contains three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the boot loastored in each fourth directory entry, which contains the update and create time stamps for the files in the previous three direector size in bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical sectors. .LP A file may use more than one directory entry, if it contains more blocks than an extent can hold. In this case, more extupport them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-priviler, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blanks .br der and CP/M itself. In order to save disk space, there are non-bootable formats which omit those system tracks. The term \fIdictory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes time s skew .br Number of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block sizes ents are allocated and each of them is numbered sequentially (extent number). One extent may store up to 128 records, thus usineged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are nroffs1 byte extent number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes) .br sk capacity\fP always excludes the space for system tracks. Note that there is no bitmap or list for free blocks. When accessintamp for second-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stamp conof 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there are lotg at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and some fr which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME cpm \16 bytes block pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE File namsists of the two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-endiansizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and there anroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SH NAME) .br 16 bytes block pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp .RE Fi .br Extension byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visible undecessing a drive for the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence of direc) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each character re lots of formats. Accessing a block is performed by accessing its sectors, which are stored with the given logical skew. .LP cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizes: .RSle name and extension may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are padded withr each user number) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free CP/M cltory entries (also called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(-> useof the file name and extension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0: requiA CP/M disk contains three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store the bo .sp Sector size in bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br Logical blanks. .LP A file may use more than one directory entry, if it contains more blocks than an extent can hold. In this case, moones support them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, only non-r number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with blankres set wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgrounder II) ot loader and CP/M itself. In order to save disk space, there are non-bootable formats which omit those system tracks. The termsector skew .br Number of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports block re extents are allocated and each of them is numbered sequentially (extent number). One extent may store up to 128 records, thuprivileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly there are s .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128 bytes.br File name byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (ZSDOS) \fIdisk capacity\fP always excludes the space for system tracks. Note that there is no bitmap or list for free blocks. When acs using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31 and sy non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedly therr II) .br File name byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel protect (e term \fIdisk capacity\fP always excludes the space for system tracks. Note that there is no bitmap or list for free blocks. Wmp consists of the two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (little-block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and tome free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its time stampe are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File formats" .SZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (visiblhen accessing a drive for the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequence ofendian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of each charhere are lots of formats. Accessing a block is performed by accessing its sectors, which are stored with the given logical skews are stored in each fourth directory entry, which contains the update and create time stamps for the files in the previous threH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format is described by the following specific sizee under each user number) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some free C directory entries (also called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(en31 \(acter of the file name and extension is used as attribute. The attributes have the following meaning: .RS .sp File name byte 0:. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks store e directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 bytes s: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries .br LoP/M clones support them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zero, onl-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, padded with requires set wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgroundethe boot loader and CP/M itself. In order to save disk space, there are non-bootable formats which omit those system tracks. Thtime stamp for second-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A time stagical sector skew .br Number of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M supports blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record contains 128yte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command (Backgbytes time stamp for second-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .RE A ti.br Logical sector skew .br Number of reserved system tracks .sp .RE A block is the smallest allocatable storage unit. CP/M sups, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending this to 31o, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) .\" Believe it or not, reportedl bytes) .br 16 bytes block pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else) .sp rounder II) .br File name byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheel prome stamp consists of the two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 bytes (lports block sizes of 1024, 2048, 4096, 8192 and 16384 bytes. Unfortunately, this format specification is not stored on the disk and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. Its timey there are nroffs which do not know \(en .if n .ds en - .if t .ds en \(en .TH CPM 5 "January 16, 1997" "CP/M tools" "File forma.RE File name and extension may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both are paddetect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public files (ittle-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit of eac and there are lots of formats. Accessing a block is performed by accessing its sectors, which are stored with the given logica stamps are stored in each fourth directory entry, which contains the update and create time stamps for the files in the previouts" .SH NAME cpm \- CP/M disk and file system format .SH DESCRIPTION Each CP/M disk format is described by the following specifid with blanks. .LP A file may use more than one directory entry, if it contains more blocks than an extent can hold. In this cavisible under each user number) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch and some h character of the file name and extension is used as attribute. The attributes have the following meaning: .RS .sp File name bl skew. .LP A CP/M disk contains three areas: .RS .sp System tracks (optional) .br Directory .br Data .sp .RE The system tracks s three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused .br 8 c sizes: .RS .sp Sector size in bytes .br Number of tracks .br Number of sectors .br Block size .br Number of directory entries se, more extents are allocated and each of them is numbered sequentially (extent number). One extent may store up to 128 recordfree CP/M clones support them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it is zerstore the boot loader and CP/M itself. In order to save disk space, there are non-bootable formats which omit those system tracrevious three directory entries: .RS .sp 1 byte status .br 8 bytes time stamp for third-last directory entry .br 2 bytes unused his case, more extents are allocated and each of them is numbered sequentially (extent number). One extent may store up to 128 some free CP/M clones support them without any patches. .LP The wheel byte is (by default) the memory location at 0x4b. If it d with blanks .br 1 byte extent number for this file .br 2 bytes unused .br 1 byte record count for this extent (a record containame byte 0: requires set wheel byte (Backgrounder II) .br File name byte 1: public file (P2DOS, ZSDOS), forground-only command ks. The term \fIdisk capacity\fP always excludes the space for system tracks. Note that there is no bitmap or list for free bloc.br 8 bytes time stamp for second-last directory entry .br 2 bytes unused .br 8 bytes time stamp for last directory entry .sp .Rrecords, thus using at most 16 K. .LP CP/M 2.2 only supports user numbers from 0\*(en15, but there is a patch for extending thisis zero, only non-privileged commands may be executed. .SH "SEE ALSO" .IR mkfs.cpm (1), .IR cpmls (1) ns 128 bytes) .br 16 bytes block pointers (16 byte values if disk capacity less than 256 K, 8 little-endian two-byte values else(Backgrounder II) .br File name byte 2: date stamp (ZSDOS), background-only commands (Backgrounder II) .br File name byte 7: wheks. When accessing a drive for the first time, CP/M builds this bitmap in core from the directory. .LP The directory is a sequeE A time stamp consists of the two dates of the last update and of the creation of a file. Each date is stored as: .RS .sp 2 by to 31 and some free CP/M clones support 0\*(en31 without patches. .LP CP/M 2.2 does not support time stamps, but P2DOS does. It) .sp .RE File name and extension may consist of any printable 7 bit ASCII character but: \fB< > . , ; : = ? * [ ]\fP. Both areel protect (ZSDOS) .br Extension byte 0: read-only .br Extension byte 1: system file .sp Extension byte 2: archived .RE Public fnce of directory entries (also called extents), which have the following structure: .RS .sp 1 byte status (0xe5 \(-> free, 0\*(etes (little-endian) days since 01-01-1978 .br 1 byte hour in BCD format .br 1 byte minute in BCD format .sp .RE The highest bit s time stamps are stored in each fourth directory entry, which contains the update and create time stamps for the files in the p padded with blanks. .LP A file may use more than one directory entry, if it contains more blocks than an extent can hold. In tiles (visible under each user number) are not supported by CP/M 2.2, but (you probably guessed that by now) there is a patch andn31 \(-> user number, used and 0x21 \(-> timestamps) .br 8 bytes file name, padded with blanks .br 3 bytes file extension, paddeof each character of the file name and extension is used as attribute. The attributes have the following meaning: .RS .sp File