a1200   NEWS   APPS   DOCS   ABOUT
a1200
----
a1200
----
Autodocs
 Devices:
 trackdisk.device
  CMD_CLEAR
  CMD_READ
  CMD_UPDATE
  CMD_WRITE
  TD_ADDCHANGEINT
  TD_CHANGENUM
  TD_CHANGESTATE
  TD_EJECT
  TD_FORMAT
  TD_GETDRIVETYPE
  TD_GETGEOMETRY
  TD_GETNUMTRACKS
  TD_MOTOR
  TD_PROTSTATUS
  TD_RAWREAD
  TD_RAWWRITE
  TD_REMCHANGEINT
  TD_SEEK
Include
GuruMeditation
Docs » Autodocs » trackdisk.device » TD_FORMAT

NAME

	TD_FORMAT/ETD_FORMAT -- format a track on a disk.

FUNCTION

	These commands are used to write data to a track that either
has not yet been formatted or has had a hard error on a standard write
command. TD_FORMAT completely ignores all data currently on a track and
does not check for disk change before performing the command. The
io_Data field must point to at least one track worth of data. The
io_Offset field must be track aligned, and the io_Length field must be
in units of track length (that is, NUMSEC*TD_SECTOR).
The device will format the requested tracks, filling each sector with
the contents of the buffer pointed to by io_Data. You
should do a read pass to verify the data.
If you have a hard write error during a normal write, you may find it
possible to use the TD_FORMAT command to reformat the track as part of
your error recovery process. ETD_FORMAT will write the sector label
area if iotd_SecLabel is non-NULL.
IO REQUEST INPUT
io_Device preset by the call to OpenDevice()
io_Unit preset by the call to OpenDevice()
io_Command TD_FORMAT or ETD_FORMAT
io_Flags 0 or IOF_QUICK
io_Data points to a buffer containing the data to write to the
track, must be at least as large as io_Length.
io_Length number of bytes to format, must be a multiple of
(TD_SECTORS * NUMSEC).
io_Offset byte offset from the start of the disk for the track to
format, must be a multiple of (TD_SECTORS * NUMSEC).
iotd_Count (ETD_FORMAT only) maximum allowable change counter
value.
iotd_SecLabel (ETD_FORMAT only) NULL or sector label buffer pointer.
If provided, the buffer must be a multiple of
(TD_LABELSIZE * NUMSEC).
IO REQUEST RESULT
io_Error - 0 for success, or an error code as defined in
<devices/trackdisk.h>

NOTES

	Under versions of Kickstart earlier than V36, the io_Data had to
point to a buffer in chip memory. This restriction is no longer
present as of Kickstart V36 and beyond.

SEE ALSO

CMD_WRITE(), TD_RAWWRITE()

Comments

Name:
E-mail: Use this if you want a message if you get a response, will not be shown.
Comment:
Select correct short for:

Future Crew

ANA
CSL
AOA
FC

Comments:

$VER: d0.se 1.14 Copyright © 2011-2024 Tobias Geijersson support at d0 dot se