Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
back2root:ibm-pc-ms-dos:hardware:informations:file_control_block [2023/01/16 17:54] – supprimée - modification externe (Unknown date) 127.0.0.1 | back2root:ibm-pc-ms-dos:hardware:informations:file_control_block [2023/01/16 17:54] (Version actuelle) – ↷ Page déplacée de back2root:ibm-pc-ms-dos:informations:file_control_block à back2root:ibm-pc-ms-dos:hardware:informations:file_control_block frater | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== FCB - DOS File Control Block ====== | ||
+ | ===== Standard DOS File Control Block ===== | ||
+ | |||
+ | {{tablelayout? | ||
+ | ^ Offset | ||
+ | | 00 | ||
+ | | 01 | ||
+ | | 09 | ||
+ | | 0C | ||
+ | | 0E | ||
+ | | 10 | ||
+ | | 14 | ||
+ | | 16 | ||
+ | | 18 | ||
+ | | 1A | ||
+ | | 20 | ||
+ | | 21 | ||
+ | |||
+ | ===== Extended DOS File Control Block ===== | ||
+ | |||
+ | {{tablelayout? | ||
+ | ^ Offset | ||
+ | | 00 | byte | if FF this is an extended FCB | | ||
+ | | 01 | 5 bytes | <color # | ||
+ | | 06 | byte | file attribute if extended FCB | | ||
+ | | 07 | byte | drive number (0 for default drive, 1=A:, 2=B:, ...) | | ||
+ | | 08 | 8 bytes | filename, left justified with trailing blanks | ||
+ | | 10 | 3 bytes | filename extension, left justified w/ | ||
+ | | 13 | word | current block number relative to beginning of the file, starting with zero | | ||
+ | | 15 | word | logical record size in bytes | | ||
+ | | 17 | dword | file size in bytes | | ||
+ | | 1B | word | date the file was created or last updated | ||
+ | | 1D | word | time of last write | | ||
+ | | 1F | 8 bytes | <color # | ||
+ | | 27 | byte | current relative record number within current BLOCK | | ||
+ | | 28 | dword | relative record number relative to the beginning of the file, starting with zero; high bit omitted if record length is 64 bytes | | ||
+ | |||
+ | information in <color # | ||
+ | |||
+ | word offset 14: | ||
+ | |||
+ | < | ||
+ | |F|E|D|C|B|A|9|8|7|6|5|4|3|2|1|0| 15,14 (Intel reverse order) | ||
+ | | | | | | | | | | | | `--------- day 1-31 | ||
+ | | | | | | | | `---------------- month 1-12 | ||
+ | | ||
+ | </ | ||
+ | |||
+ | word offset 16: | ||
+ | |||
+ | < | ||
+ | |F|E|D|C|B|A|9|8|7|6|5|4|3|2|1|0| 17,16 (Intel reverse order) | ||
+ | | | | | | | | | | | | `---------- secs in 2 second increments | ||
+ | | | | | | `--------------------- minutes (0-59) | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | {{anchor: | ||
+ | ===== DOS Version Specific parameters ===== | ||
+ | |||
+ | ==== DOS 2.x Values for reserved fields at offsets 18h-1Ah ==== | ||
+ | |||
+ | ^ Offset | ||
+ | | 18 | Byte | see below | | ||
+ | | 19 | Word | starting cluster number | ||
+ | |||
+ | < | ||
+ | |7|6|5|4|3|2|1|0| | ||
+ | | | `------------- unknown | ||
+ | | `-------------- 1 = open | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== DOS 3.x Values for reserved fields at offsets 18h-19h ==== | ||
+ | |||
+ | |||
+ | ^ Offset | ||
+ | | 18 | Byte | System File Table (SFT) entry for file | | ||
+ | | 19 | Byte | attributes | | ||
+ | |||
+ | < | ||
+ | |7|6|5|4|3|2|1|0| | ||
+ | | | `-------------- unknown | ||
+ | `--- share status | ||
+ | </ | ||
+ | |||
+ | **Share Status** | ||
+ | | 00 | SHARE not loaded block device | | ||
+ | | 01 | SHARE not loaded characted device | ||
+ | | 10 | SHARE loaded, remote file| | ||
+ | | 11 | SHARE loaded local file| | ||
+ | |||
+ | ==== DOS 3.x with SHARE, local file reserved offsets 1Ah-1Eh ==== | ||
+ | |||
+ | ^ Offset | ||
+ | | 1A | word |starting cluster number | ||
+ | | 1C | word |offset within SHARE of sharing record| | ||
+ | | 1E | byte |file attribute| | ||
+ | |||
+ | |||
+ | ==== DOS 3.x with SHARE, remote file reserved offsets 1Ah-1Eh ==== | ||
+ | |||
+ | ^ Offset | ||
+ | | 1A | word | sector number containing directory entry | | ||
+ | | 1C | word | last cluster accessed relative to beginning of file | | ||
+ | | 1E | byte | absolute cluster number of last cluster accessed | ||
+ | |||
+ | ==== DOS 3.x without SHARE reserved offsets 1Ah-1Fh Ø ==== | ||
+ | {{tablelayout? | ||
+ | ^ Offset | ||
+ | | 1A | byte | ((device attribute word low byte) AND 0Ch) OR (open mode) | | ||
+ | | 1B | word | starting cluster number | ||
+ | | 1D | word | sector number containing directory entry | | ||
+ | | 1F | byte | number of directory entry within sector | ||
+ | |||
+ | |||
+ | ===== FCB related functions ===== | ||
+ | |||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: | ||
+ | |[[back2root: |