Source code of Windows XP (NT5)
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.

114 lines
2.3 KiB

  1. /*++
  2. Copyright (c) 1992 Microsoft Corporation
  3. Module Name:
  4. physlogi.h
  5. Abstract:
  6. This file contains structures and defines that are used
  7. specifically for the tape drivers. Contains #define's,
  8. function protypes, etc. for use in calling functions in
  9. physlogi.c that do physical to pseudo-logical and pseudo-
  10. logical to physical tape block address/position translation.
  11. Author:
  12. Mike Colandreo (Maynard)
  13. Revision History:
  14. --*/
  15. // begin_ntminitape
  16. //
  17. // defines for QIC tape density codes
  18. //
  19. #define QIC_XX 0 // ????
  20. #define QIC_24 5 // 0x05
  21. #define QIC_120 15 // 0x0F
  22. #define QIC_150 16 // 0x10
  23. #define QIC_525 17 // 0x11
  24. #define QIC_1350 18 // 0x12
  25. #define QIC_1000 21 // 0x15
  26. #define QIC_1000C 30 // 0x1E
  27. #define QIC_2100 31 // 0x1F
  28. #define QIC_2GB 34 // 0x22
  29. #define QIC_5GB 40 // 0x28
  30. //
  31. // defines for QIC tape media codes
  32. //
  33. #define DCXXXX 0
  34. #define DC300 1
  35. #define DC300XLP 2
  36. #define DC615 3
  37. #define DC600 4
  38. #define DC6037 5
  39. #define DC6150 6
  40. #define DC6250 7
  41. #define DC6320 8
  42. #define DC6525 9
  43. #define DC9135SL 33 //0x21
  44. #define DC9210 34 //0x22
  45. #define DC9135 35 //0x23
  46. #define DC9100 36 //0x24
  47. #define DC9120 37 //0x25
  48. #define DC9120SL 38 //0x26
  49. #define DC9164 39 //0x27
  50. #define DCXXXXFW 48 //0x30
  51. #define DC9200SL 49 //0x31
  52. #define DC9210XL 50 //0x32
  53. #define DC10GB 51 //0x33
  54. #define DC9200 52 //0x34
  55. #define DC9120XL 53 //0x35
  56. #define DC9210SL 54 //0x36
  57. #define DC9164XL 55 //0x37
  58. #define DC9200XL 64 //0x40
  59. #define DC9400 65 //0x41
  60. #define DC9500 66 //0x42
  61. #define DC9500SL 70 //0x46
  62. //
  63. // defines for translation reference point
  64. //
  65. #define NOT_FROM_BOT 0
  66. #define FROM_BOT 1
  67. //
  68. // info/structure returned by/from
  69. // TapeLogicalBlockToPhysicalBlock( )
  70. //
  71. typedef struct _TAPE_PHYS_POSITION {
  72. ULONG SeekBlockAddress;
  73. ULONG SpaceBlockCount;
  74. } TAPE_PHYS_POSITION, PTAPE_PHYS_POSITION;
  75. //
  76. // function prototypes
  77. //
  78. TAPE_PHYS_POSITION
  79. TapeClassLogicalBlockToPhysicalBlock(
  80. IN UCHAR DensityCode,
  81. IN ULONG LogicalBlockAddress,
  82. IN ULONG BlockLength,
  83. IN BOOLEAN FromBOT
  84. );
  85. ULONG
  86. TapeClassPhysicalBlockToLogicalBlock(
  87. IN UCHAR DensityCode,
  88. IN ULONG PhysicalBlockAddress,
  89. IN ULONG BlockLength,
  90. IN BOOLEAN FromBOT
  91. );
  92. // end_ntminitape