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