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];
115 /*0c4*/ ULONG r3
[15];
120 /*000*/ TEXT id
[4]; /* LSEG */
121 /*004*/ ULONG size
; /* 128 ULONGs */
122 /*008*/ ULONG checksum
;
123 /*00c*/ ULONG hostID
; /* 7 */
125 /*014*/ ULONG loadData
[123];
129 /*000*/ TEXT id
[4]; /* BOOT */
130 /*004*/ ULONG size
; /* 128 ULONGs */
131 /*008*/ ULONG checksum
;
132 /*00c*/ ULONG hostID
; /* 7 */
134 /*014*/ ULONG loadData
[123];
138 /*000*/ TEXT id
[4]; /* FSHD */
139 /*004*/ ULONG size
; /* 64 */
140 /*008*/ ULONG checksum
;
141 /*00c*/ ULONG hostID
; /* 7 */
145 /*020*/ TEXT dosType
[4];
146 /*024*/ USHORT majVersion
;
147 /*026*/ USHORT minVersion
;
148 /*028*/ ULONG patchFlags
;
153 /*038*/ ULONG handler
;
154 /*03c*/ ULONG stackSize
;
155 /*040*/ ULONG priority
;
156 /*044*/ ULONG startup
;
157 /*048*/ ULONG segListBlock
;
158 /*04c*/ ULONG globalVec
;
159 /*050*/ ULONG r2
[23];
160 /*0ac*/ ULONG r3
[21];
164 #endif /* _HD_BLK_H */
165 /*##########################################################################*/