Command Operation -------- ---------- CMD_CLEAR Mark track buffer as invalid. Forces the track to be ETD_CLEAR re-read. ETD_CLEAR also checks for a diskchange. CMD_READ Read one or more sectors from a disk. ETD_READ also ETD_READ reads the sector label area and checks for a diskchange. CMD_UPDATE Write out track buffer if it has been changed. ETD_UPDATE ETD_UPDATE also checks for a diskchange. CMD_WRITE Write one or more sectors to a disk. ETD_WRITE also ETD_WRITE writes the sector label area and checks for a diskchange. TD_ADDCHANGEINT Add an interrupt handler to be activated on a diskchange. TD_CHANGENUM Return the current value of the diskchange counter used by the ETD commands to determine if a diskchange has occurred. TD_CHANGESTATE Return the disk present/not-present status of a drive. TD_EJECT Eject a disk from a drive. This command will only work on drives that support an eject command (V36). TD_FORMAT Initialize one or more tracks with a data buffer. ETD_FORMAT ETD_FORMAT also initializes the sector label area. TD_GETDRIVETYPE Return the type of disk drive in use by the unit. TD_GETGEOMETRY Return the disk geometry table (V36). TD_GETNUMTRACKS Return the number of tracks usable with the unit. TD_MOTOR Turn the motor on or off. ETD_MOTOR also checks for a ETD_MOTOR diskchange. TD_PROTSTATUS Return the write-protect status of a disk. TD_RAWREAD Read RAW sector data from disk (unencoded MFM). ETD_RAWREAD ETD_RAWREAD also checks for a diskchange. TD_RAWWRITE Write RAW sector data to disk. ETD_RAWWRITE also checks ETD_RAWWRITE for a diskchange. TD_REMCHANGEINT Remove a diskchange interrupt handler. TD_SEEK Move the head to a specific track. ETD_SEEK also checks for a ETD_SEEK diskchange. Exec Functions as Used in This Chapter -------------------------------------- AbortIO() Abort a command to the trackdisk device. BeginIO() Initiate a command and return immediately (asynchronous request). CloseDevice() Relinquish use of a disk unit. DoIO() Initiate a command and wait for completion (synchronous request). OpenDevice() Obtain exclusive use of a particular disk unit. Exec Support Functions as Used in This Chapter ---------------------------------------------- CreateExtIO() Create an extended I/O request structure of type IOExtTD. This structure will be used to communicate commands to the trackdisk device. CreatePort() Create a signal message port for reply messages from the trackdisk device. Exec will signal a task when a message arrives at the reply port. DeleteExtIO() Delete an I/O request structure created by CreateExtIO(). DeletePort() Delete the message port created by CreatePort().