home *** CD-ROM | disk | FTP | other *** search
- @DATABASE "Device/Trackdisk.h"
- @MASTER "Work2:AD/IInc/Device/Trackdisk.h"
- @REMARK This file was created by ADtoHT 2.0 on 11-Mär-97 13:33:50
- @REMARK Do not edit
- @REMARK ADtoHT is © 1993-1995 Christian Stieber
-
- @NODE MAIN "Device/Trackdisk.h"
- @TOC "__pOS_Dev.guide/MAIN"
-
- @{"Device/Trackdisk.h" LINK File}
-
-
- @{b}Structures@{ub}
-
- @{"pOS_DriveGeometry" LINK "Device/Trackdisk.h/File" 102} @{"pOS_TrackdiskIO" LINK "Device/Trackdisk.h/File" 18}
-
- @ENDNODE
- @NODE File "Device/Trackdisk.h"
- #ifndef __INC_POS_DEVICE_TRACKDISK_H
- #define __INC_POS_DEVICE_TRACKDISK_H
- /*******************************************************************
- Includes Release 24
- (C) Copyright 1995-1997 proDAD
- All Rights Reserved
-
- $AUT Holger Burkarth
- $DAT >>Trackdisk.h<< 23 Dec 1996 13:25:52 - (C) ProDAD
- *******************************************************************/
- #ifndef __INC_POS_PEXEC_DEVICE_H
- #include <@{"pExec/Device.h" LINK "pExec/Device.h/File"}>
- #endif
-
-
- /*----------------------------------
- -----------------------------------*/
- struct pOS_TrackdiskIO
- {
- /* @{"struct pOS_IOStdReq" LINK "pExec/Device.h/File" 66} */
-
- @{"struct pOS_Message" LINK "pExec/MsgPort.h/File" 41} tdio_Message;
- @{"struct pOS_Device" LINK "pExec/Device.h/File" 21} *tdio_Device; /* device node pointer */
- @{"struct pOS_Unit" LINK "pExec/Device.h/File" 29} *tdio_Unit; /* unit (driver private)*/
- @{"UWORD" LINK "pExec/Types.h/File" 93} tdio_Command; /* (enum pOS_IOReqCommands) */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} tdio_Flags; /* (enum pOS_IOReqFlags) */
- @{"SBYTE" LINK "pExec/Types.h/File" 94} tdio_Error; /* (enum pOS_IOReqErrors) */
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_Actual; /* actual number of bytes transferred */
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_Length; /* requested number bytes transferred */
- @{"APTR" LINK "pExec/Types.h/File" 87} tdio_Data; /* points to data area */
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_HOffset; /* High - Offset */
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_LOffset; /* Low - Offset */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} tdio_Pad[8];
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_Count; /* Diskchange counter */
- @{"ULONG" LINK "pExec/Types.h/File" 91} tdio_SecLabel;
-
- @{"UBYTE" LINK "pExec/Types.h/File" 95} tdio_Reserved[32];
- };
-
-
- enum pOS_TrackdiskIOReqCommands
- {
- TDCMDF_ExtCom = 0x8000,
-
- TDCMD_Motor=CMD_NONSTD,
- TDCMD_Seek,
- TDCMD_Format,
- TDCMD_Notify, /* Notify: Replyed by diskchange */
- TDCMD_ChangeNum,
- TDCMD_ChangeState,
- TDCMD_ProtStatus,
- TDCMD_RawRead,
- TDCMD_RawWrite,
- TDCMD_GetDriveType,
- TDCMD_GetNumTracks,
-
- TDCMD_AddChangeInt, /* (@{"struct pOS_Interrupt" LINK "pExec/Interupt.h/File" 17}*) */
- TDCMD_RemChangeInt, /* NOT AMIGA COMPATIBLE */
-
- TDCMD_GetGeometry,
- TDCMD_Eject,
- TDCMD_LastComm,
-
- TDCMDE_Write = TDCMDF_ExtCom | CMD_WRITE,
- TDCMDE_Read = TDCMDF_ExtCom | CMD_READ,
- TDCMDE_Motor = TDCMDF_ExtCom | TDCMD_Motor,
- TDCMDE_Seek = TDCMDF_ExtCom | TDCMD_Seek,
- TDCMDE_Format = TDCMDF_ExtCom | TDCMD_Format,
- TDCMDE_Update = TDCMDF_ExtCom | CMD_UPDATE,
- TDCMDE_Clear = TDCMDF_ExtCom | CMD_CLEAR,
- TDCMDE_RawRead = TDCMDF_ExtCom | TDCMD_RawRead,
- TDCMDE_RawWrite = TDCMDF_ExtCom | TDCMD_RawWrite,
-
- };
-
-
- enum pOS_TrackdiskIOReqErrors
- {
- TDIOERR_NotSpecified= 20, /* general catchall */
- TDIOERR_NoSecHdr= 21, /* couldn't even find a sector */
- TDIOERR_BadSecPreamble= 22, /* sector looked wrong */
- TDIOERR_BadSecID= 23, /* ditto */
- TDIOERR_BadHdrSum= 24, /* header had incorrect checksum */
- TDIOERR_BadSecSum= 25, /* data had incorrect checksum */
- TDIOERR_TooFewSecs= 26, /* couldn't find enough sectors */
- TDIOERR_BadSecHdr= 27, /* another "sector looked wrong" */
- TDIOERR_WriteProt= 28, /* can't write to a protected disk */
- TDIOERR_DiskChanged= 29, /* no disk in the drive */
- TDIOERR_SeekError= 30, /* couldn't find track 0 */
- TDIOERR_NoMem= 31, /* ran out of memory */
- TDIOERR_BadUnitNum= 32, /* asked for a unit > NUMUNITS */
- TDIOERR_BadDriveType= 33, /* not a drive that trackdisk groks */
- TDIOERR_DriveInUse= 34, /* someone else allocated the drive */
- TDIOERR_PostReset= 35, /* user hit reset; awaiting doom */
- };
-
-
-
-
-
-
- struct pOS_DriveGeometry
- {
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_SectorSize; /* in bytes */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_TotalSectors; /* total # of sectors on drive */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_Cylinders; /* number of cylinders */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_CylSectors; /* number of sectors/cylinder */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_Heads; /* number of surfaces */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_TrackSectors; /* number of sectors/track */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_BufMemType; /* preferred buffer memory type */
- /* (usually MEMF_PUBLIC) */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} dg_DeviceType; /* (enum pOS_DriveGeometryType) */
- @{"UBYTE" LINK "pExec/Types.h/File" 95} dg_Flags; /* (enum pOS_DriveGeometryType) */
- @{"ULONG" LINK "pExec/Types.h/File" 91} dg_Reserved[16];
- };
-
-
-
- enum pOS_DriveGeometryType /** dg_DeviceType **/
- {
- DGEOTYP_DirectAccess = 0,
- DGEOTYP_SequentialAccess,
- DGEOTYP_Printer,
- DGEOTYP_Processor,
- DGEOTYP_Worm,
- DGEOTYP_CDRom,
- DGEOTYP_Scanner,
- DGEOTYP_OpticalDisk,
- DGEOTYP_MediumChanger,
- DGEOTYP_Communication,
-
- DGEOTYP_Unknown = 31
- };
-
-
- enum pOS_DriveGeometryFlags /** dg_Flags **/
- {
- DGEOB_Removable = 0,
-
- DGEOF_Removable = 1,
- };
-
-
- #endif
- @ENDNODE
-