home *** CD-ROM | disk | FTP | other *** search
- {$if not def DEVICES_TRACKDISK_H} CONST DEVICES_TRACKDISK_H=0;
-
- { *********************************************************************
- ** KickPascal-Include-Datei "devices/trackdisk.h" zu Kickstart 3.0 **
- ********************************************************************* }
-
- TYPE p_IOExtTD = ^IOExtTD;
- TYPE p_DriveGeometry = ^DriveGeometry;
- TYPE p_TDU_PublicUnit = ^TDU_PublicUnit;
-
- {$if not def EXEC_IO_H;incl "exec/io.h";endif}
- {$if not def EXEC_DEVICES_H;incl "exec/devices.h";endif}
-
- CONST
- NUMSECS = 11;
- NUMUNITS = 4;
- TD_SECTOR = 512;
- TD_SECSHIFT = 9;
-
- CONST TD_NAME = "trackdisk.device";
-
-
- CONST TDF_EXTCOM = $8000;
-
- CONST
- TD_MOTOR = (CMD_NONSTD+0);
- TD_SEEK = (CMD_NONSTD+1);
- TD_FORMAT = (CMD_NONSTD+2);
- TD_REMOVE = (CMD_NONSTD+3);
- TD_CHANGENUM = (CMD_NONSTD+4);
- TD_CHANGESTATE = (CMD_NONSTD+5);
- TD_PROTSTATUS = (CMD_NONSTD+6);
- TD_RAWREAD = (CMD_NONSTD+7);
- TD_RAWWRITE = (CMD_NONSTD+8);
- TD_GETDRIVETYPE = (CMD_NONSTD+9);
- TD_GETNUMTRACKS = (CMD_NONSTD+10);
- TD_ADDCHANGEINT = (CMD_NONSTD+11);
- TD_REMCHANGEINT = (CMD_NONSTD+12);
- TD_GETGEOMETRY = (CMD_NONSTD+13);
- TD_EJECT = (CMD_NONSTD+14);
- TD_LASTCOMM = (CMD_NONSTD+15);
-
- ETD_WRITE = (CMD_WRITE or TDF_EXTCOM);
- ETD_READ = (CMD_READ or TDF_EXTCOM);
- ETD_MOTOR = (TD_MOTOR or TDF_EXTCOM);
- ETD_SEEK = (TD_SEEK or TDF_EXTCOM);
- ETD_FORMAT = (TD_FORMAT or TDF_EXTCOM);
- ETD_UPDATE = (CMD_UPDATE or TDF_EXTCOM);
- ETD_CLEAR = (CMD_CLEAR or TDF_EXTCOM);
- ETD_RAWREAD = (TD_RAWREAD or TDF_EXTCOM);
- ETD_RAWWRITE = (TD_RAWWRITE or TDF_EXTCOM);
-
- TYPE IOExtTD = RECORD
- iotd_Req : IOStdReq;
- iotd_Count : Long;
- iotd_SecLabel : Long;
- END;
-
- TYPE DriveGeometry = RECORD
- dg_SectorSize : Long;
- dg_TotalSectors : Long;
- dg_Cylinders : Long;
- dg_CylSectors : Long;
- dg_Heads : Long;
- dg_TrackSectors : Long;
- dg_BufMemType : Long;
- dg_DeviceType : Byte;
- dg_Flags : Byte;
- dg_Reserved : Word;
- END;
-
- CONST
- DG_DIRECT_ACCESS = 0;
- DG_SEQUENTIAL_ACCESS = 1;
- DG_PRINTER = 2;
- DG_PROCESSOR = 3;
- DG_WORM = 4;
- DG_CDROM = 5;
- DG_SCANNER = 6;
- DG_OPTICAL_DISK = 7;
- DG_MEDIUM_CHANGER = 8;
- DG_COMMUNICATION = 9;
- DG_UNKNOWN = 31;
-
- CONST
- DGB_REMOVABLE = 0;
- DGF_REMOVABLE = 1;
-
- CONST
- IOTDB_INDEXSYNC = 4;
- IOTDF_INDEXSYNC = $10;
-
- CONST
- IOTDB_WORDSYNC = 5;
- IOTDF_WORDSYNC = $20;
-
-
- CONST TD_LABELSIZE = 16;
-
- CONST
- TDB_ALLOW_NON_3_5 = 0;
- TDF_ALLOW_NON_3_5 = $1;
-
- CONST
- DRIVE3_5 = 1;
- DRIVE5_25 = 2;
- DRIVE3_5_150RPM = 3;
-
-
- CONST
- TDERR_NotSpecified = 20;
- TDERR_NoSecHdr = 21;
- TDERR_BadSecPreamble = 22;
- TDERR_BadSecID = 23;
- TDERR_BadHdrSum = 24;
- TDERR_BadSecSum = 25;
- TDERR_TooFewSecs = 26;
- TDERR_BadSecHdr = 27;
- TDERR_WriteProt = 28;
- TDERR_DiskChanged = 29;
- TDERR_SeekError = 30;
- TDERR_NoMem = 31;
- TDERR_BadUnitNum = 32;
- TDERR_BadDriveType = 33;
- TDERR_DriveInUse = 34;
- TDERR_PostReset = 35;
-
-
- TYPE TDU_PublicUnit = RECORD
- tdu_Unit : Unit;
- tdu_Comp01Track : Word;
- tdu_Comp10Track : Word;
- tdu_Comp11Track : Word;
- tdu_StepDelay : Long;
- tdu_SettleDelay : Long;
- tdu_RetryCnt : Byte;
- tdu_PubFlags : Byte;
- tdu_CurrTrk : Word;
- tdu_CalibrateDelay : Long;
- tdu_Counter : Long;
- END;
-
- CONST
- TDPB_NOCLICK = 0;
- TDPF_NOCLICK = $1;
-
- {$endif}
-