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.

50 lines
1.9 KiB

  1. BREAK <DPB structure>
  2. ;
  3. ; Microsoft Confidential
  4. ; Copyright (C) Microsoft Corporation 1991
  5. ; All Rights Reserved.
  6. ;
  7. ;** DPB - Drive Parameter Block
  8. ;
  9. ; BUGBUG - this isn't authorative - it's my probably incomplete and
  10. ; possibly inaccurate deductions from code study... - jgl
  11. ;
  12. ; The DPB is DOS's main structure for describing block devices.
  13. ; It contains info about the "Drive" intermingled with info about
  14. ; the FAT file system which is presumably on the drive. I don't know
  15. ; how those fields are used if it's not the FAT file system - BUGBUG
  16. ;
  17. ; The DPBs are statically allocated and chained off of DPBHead.
  18. ; Users scan this chain looking for a match on DPB_DRIVE.
  19. ; The DPBs are built at init time from info in the SYSDEV structure.
  20. DPB STRUC
  21. DPB_DRIVE DB ? ; Logical drive # assoc with DPB (A=0,B=1,...)
  22. DPB_UNIT DB ? ; Driver unit number of DPB
  23. DPB_SECTOR_SIZE DW ? ; Size of physical sector in bytes
  24. DPB_CLUSTER_MASK DB ? ; Sectors/cluster - 1
  25. DPB_CLUSTER_SHIFT DB ? ; Log2 of sectors/cluster
  26. DPB_FIRST_FAT DW ? ; Starting record of FATs
  27. DPB_FAT_COUNT DB ? ; Number of FATs for this drive
  28. DPB_ROOT_ENTRIES DW ? ; Number of directory entries
  29. DPB_FIRST_SECTOR DW ? ; First sector of first cluster
  30. DPB_MAX_CLUSTER DW ? ; Number of clusters on drive + 1
  31. DPB_FAT_SIZE DW ? ; Number of records occupied by FAT
  32. DPB_DIR_SECTOR DW ? ; Starting record of directory
  33. DPB_DRIVER_ADDR DD ? ; Pointer to driver
  34. DPB_MEDIA DB ? ; Media byte
  35. DPB_FIRST_ACCESS DB ? ; This is initialized to -1 to force a media
  36. ; check the first time this DPB is used
  37. DPB_NEXT_DPB DD ? ; Pointer to next Drive parameter block
  38. DPB_NEXT_FREE DW ? ; Cluster # of last allocated cluster
  39. DPB_FREE_CNT DW ? ; Count of free clusters, -1 if unknown
  40. DPB ENDS
  41. DPBSIZ EQU SIZE DPB ; Size of the structure in bytes
  42. DSKSIZ = DPB_max_CLUSTER ; Size of disk (temp used during init only)
  43.