1 #include <devices/trackdisk.h>
3 #include <prefs/trackdisk.h>
4 #include <utility/tagitem.h>
6 #include <proto/exec.h>
9 #include "trackdiskprefs.h"
11 struct td_UnitPrefs TDPrefs
[TD_NUMUNITS
];
12 struct IORequest TDIO
;
20 cf
= Open(TRACKDISK_PREFS_NAME
, MODE_OLDFILE
);
23 while (FRead(cf
, &PrefsBuf
, sizeof(PrefsBuf
), 1)) {
25 if (PrefsBuf
[0] == TDPR_UnitNum
)
28 if (Unit
< TD_NUMUNITS
) {
32 TDPrefs
[Unit
].PubFlags
= PrefsBuf
[1];
35 TDPrefs
[Unit
].RetryCnt
= PrefsBuf
[1];
40 if (PrefsBuf
[0] == TAG_DONE
)
47 void ReadTDPrefs(void)
50 struct TDU_PublicUnit
*tdu
;
52 for (i
= 0; i
< TD_NUMUNITS
; i
++) {
53 TDPrefs
[i
].PubFlags
= 0;
54 TDPrefs
[i
].RetryCnt
= 3;
57 for (i
= 0; i
< TD_NUMUNITS
; i
++) {
58 if (!OpenDevice("trackdisk.device", i
, &TDIO
, 0)) {
59 tdu
= (struct TDU_PublicUnit
*)TDIO
.io_Unit
;
60 tdu
->tdu_PubFlags
= TDPrefs
[i
].PubFlags
;
61 tdu
->tdu_RetryCnt
= TDPrefs
[i
].RetryCnt
;