Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
3.5 KiB

  1. ; SCCSID = @(#)cpmfcb.asm 1.1 85/04/10
  2. ; SCCSID = @(#)cpmfcb.asm 1.1 85/04/10
  3. ;BREAK <File Control Block definition>
  4. ;
  5. ; Field definition for FCBs
  6. ; The FCB has the following structure:
  7. ;
  8. ; +---------------------------+
  9. ; | Drive indicator(byte) |
  10. ; +---------------------------+
  11. ; | Filename (8 chars) |
  12. ; +---------------------------+
  13. ; | Extension (3 chars) |
  14. ; +---------------------------+
  15. ; | Current Extent(word) |
  16. ; +---------------------------+
  17. ; | Record size (word) |
  18. ; +---------------------------+
  19. ; | File Size (2 words) |
  20. ; +---------------------------+
  21. ; | Date of write |
  22. ; +---------------------------+
  23. ; | Time of write |
  24. ; +---------------------------+
  25. ;----+----+----+----+----+----+----+----+----+----+----+----+----+----+----;
  26. ; C A V E A T P R O G R A M M E R ;
  27. ; ;
  28. ; +---------------------------+
  29. ; | 8 bytes reserved |
  30. ; +---------------------------+
  31. ; ;
  32. ; C A V E A T P R O G R A M M E R ;
  33. ;----+----+----+----+----+----+----+----+----+----+----+----+----+----+----;
  34. ; | next record number |
  35. ; +---------------------------+
  36. ; | random record number |
  37. ; +---------------------------+
  38. ;
  39. sys_fcb STRUC
  40. fcb_drive DB ?
  41. fcb_name DB 8 DUP (?)
  42. fcb_ext DB 3 DUP (?)
  43. fcb_EXTENT DW ?
  44. fcb_RECSIZ DW ? ; Size of record (user settable)
  45. fcb_FILSIZ DW ? ; Size of file in bytes; used with the
  46. ; following word
  47. fcb_DRVBP DW ? ; BP for SEARCH FIRST and SEARCH NEXT
  48. fcb_FDATE DW ? ; Date of last writing
  49. fcb_FTIME DW ? ; Time of last writing
  50. ;----+----+----+----+----+----+----+----+----+----+----+----+----+----+----;
  51. ; C A V E A T P R O G R A M M E R ;
  52. ; ;
  53. fcb_reserved DB 8 DUP (?) ; RESERVED
  54. ; ;
  55. ; C A V E A T P R O G R A M M E R ;
  56. ;----+----+----+----+----+----+----+----+----+----+----+----+----+----+----;
  57. fcb_NR DB ? ; Next record
  58. fcb_RR DB 4 DUP (?) ; Random record
  59. sys_fcb ENDS
  60. FILDIRENT = fcb_FILSIZ ; Used only by SEARCH FIRST and SEARCH
  61. ; NEXT
  62. ; FCB's reserve area is interpreted on NT as follows.
  63. fcb_sfn EQU BYTE PTR fcb_reserved ; SFN
  64. fcb_res_dev EQU BYTE PTR fcb_reserved+1 ; 1 if local device
  65. fcb_res_dummy EQU BYTE PTR fcb_reserved+2 ; Not using in NT
  66. fcb_res_dummy2 EQU BYTE PTR fcb_reserved+3 ; Not using in NT
  67. fcb_res_Sig EQU DWORD PTR fcb_reserved+4 ; Using as a check
  68. ; fcb_nsl_Sig is a signature to check if the FCB-SFT association is valid.
  69. ;
  70. ; for a local device this field contains the devptr. sft's field devptr
  71. ; is checked against it.
  72. ;
  73. ; for a file/UNC/pipe etc this field contains an NT handle. sft's NThandle
  74. ; field is checked against it.