2 * ADF Library. (C) 1997-1998 Laurent Clevy
6 * hard disk blocks structures
15 /* ------- Generic ---------*/
17 /*000*/ TEXT id
[4]; /* NONE */
18 /*004*/ ULONG size
; /* 64 ULONGs */
19 /*008*/ ULONG checksum
;
20 /*00c*/ ULONG hostID
; /* 7 */
21 /*010*/ ULONG longData
[124]; /* Data */
24 /* ------- RDSK ---------*/
26 /*000*/ TEXT id
[4]; /* RDSK */
27 /*004*/ ULONG size
; /* 64 ULONGs */
28 /*008*/ ULONG checksum
;
29 /*00c*/ ULONG hostID
; /* 7 */
30 /*010*/ ULONG blockSize
; /* 512 bytes */
31 /*014*/ ULONG flags
; /* 0x17 */
32 /*018*/ ULONG badBlockList
;
33 /*01c*/ ULONG partitionList
;
34 /*020*/ ULONG fileSysHdrList
;
35 /*024*/ ULONG driveInit
;
36 /*028*/ ULONG bootBlockList
; /* Amiga OS 4 Boot Blocks */
37 /*02c*/ ULONG r1
[5]; /* -1 */
38 /*040*/ ULONG cylinders
;
39 /*044*/ ULONG sectors
;
41 /*04c*/ ULONG interleave
;
42 /*050*/ ULONG parkingZone
;
43 /*054*/ ULONG r2
[3]; /* 0 */
44 /*060*/ ULONG writePreComp
;
45 /*064*/ ULONG reducedWrite
;
46 /*068*/ ULONG stepRate
;
47 /*06c*/ ULONG r3
[5]; /* 0 */
48 /*080*/ ULONG rdbBlockLo
;
49 /*084*/ ULONG rdbBlockHi
;
50 /*088*/ ULONG loCylinder
;
51 /*08c*/ ULONG hiCylinder
;
52 /*090*/ ULONG cylBlocks
;
53 /*094*/ ULONG autoParkSeconds
;
54 /*098*/ ULONG highRDSKBlock
;
55 /*09c*/ ULONG r4
; /* 0 */
56 /*0a0*/ TEXT diskVendor
[8];
57 /*0a8*/ TEXT diskProduct
[16];
58 /*0b8*/ TEXT diskRevision
[4];
59 /*0bc*/ TEXT controllerVendor
[8];
60 /*0c4*/ TEXT controllerProduct
[16];
61 /*0d4*/ TEXT controllerRevision
[4];
62 /*0d8*/ ULONG r5
[10]; /* 0 */
68 /*000*/ ULONG badBlock
;
69 /*004*/ ULONG goodBlock
;
74 /*000*/ TEXT id
[4]; /* BADB */
75 /*004*/ ULONG size
; /* 128 ULONGs */
76 /*008*/ ULONG checksum
;
77 /*00c*/ ULONG hostID
; /* 7 */
80 /*018*/ struct bBADBentry blockPairs
[61];
86 /*000*/ TEXT id
[4]; /* PART */
87 /*004*/ ULONG size
; /* 64 ULONGs */
88 /*008*/ ULONG checksum
;
89 /*00c*/ ULONG hostID
; /* 7 */
93 /*020*/ ULONG devFlags
;
94 /*024*/ UBYTE nameLen
;
95 /*025*/ TEXT name
[31];
98 /*080*/ ULONG vectorSize
; /* often 16 ULONGs */
99 /*084*/ ULONG blockSize
; /* 128 ULONGs */
100 /*088*/ ULONG secOrg
;
101 /*08c*/ ULONG surfaces
;
102 /*090*/ ULONG sectorsPerBlock
; /* == 1 */
103 /*094*/ ULONG blocksPerTrack
;
104 /*098*/ ULONG dosReserved
;
105 /*09c*/ ULONG dosPreAlloc
;
106 /*0a0*/ ULONG interleave
;
107 /*0a4*/ ULONG lowCyl
;
108 /*0a8*/ ULONG highCyl
;
109 /*0ac*/ ULONG numBuffer
;
110 /*0b0*/ ULONG bufMemType
;
111 /*0b4*/ ULONG maxTransfer
;
113 /*0bc*/ ULONG bootPri
;
114 /*0c0*/ char dosType
[4];
116 /*0c8*/ ULONG control
;
117 /*0cc*/ ULONG bootBlocks
;
118 /*0d0*/ ULONG r3
[12];
123 /*000*/ TEXT id
[4]; /* LSEG */
124 /*004*/ ULONG size
; /* 128 ULONGs */
125 /*008*/ ULONG checksum
;
126 /*00c*/ ULONG hostID
; /* 7 */
128 /*014*/ ULONG loadData
[123];
132 /*000*/ TEXT id
[4]; /* BOOT */
133 /*004*/ ULONG size
; /* 128 ULONGs */
134 /*008*/ ULONG checksum
;
135 /*00c*/ ULONG hostID
; /* 7 */
137 /*014*/ ULONG loadData
[123];
141 /*000*/ TEXT id
[4]; /* FSHD */
142 /*004*/ ULONG size
; /* 64 */
143 /*008*/ ULONG checksum
;
144 /*00c*/ ULONG hostID
; /* 7 */
148 /*020*/ TEXT dosType
[4];
149 /*024*/ USHORT majVersion
;
150 /*026*/ USHORT minVersion
;
151 /*028*/ ULONG patchFlags
;
156 /*038*/ ULONG handler
;
157 /*03c*/ ULONG stackSize
;
158 /*040*/ ULONG priority
;
159 /*044*/ ULONG startup
;
160 /*048*/ ULONG segListBlock
;
161 /*04c*/ ULONG globalVec
;
162 /*050*/ ULONG r2
[23];
163 /*0ac*/ ULONG r3
[21];
167 #endif /* _HD_BLK_H */
168 /*##########################################################################*/