[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]


   NAME
	TD_ADDCHANGEINT -- add a disk change software interrupt handler.

   FUNCTION
	This command lets you add a software interrupt handler to the
	disk device that gets invoked whenever a disk insertion or removal
	occurs.

	You must pass in a properly initialized Exec Interrupt structure
	and be prepared to deal with disk insertions/removals
	immediately. From within the interrupt handler, you may only call the
	status commands that can use IOF_QUICK.

	To set up the handler, an Interrupt structure must be initialized.
	This structure is supplied as the io_Data to the TD_ADDCHANGEINT
	command. The handler then gets linked into the handler chain and
	gets invoked whenever a disk change happens. You must eventually
	remove the handler before you exit.

	This command only returns when the handler is removed. That is,
	the device holds onto the IO request until the TD_REMCHANGEINT command
	is executed with that same IO request. Hence, you must use SendIO()
	with this command.

   IO REQUEST INPUT
	io_Device	preset by the call to OpenDevice()
	io_Unit		preset by the call to OpenDevice()
	io_Command	TD_ADDCHANGEINT
	io_Flags	0
	io_Length	sizeof(struct Interrupt)
	io_Data		pointer to Interrupt structure

   IO REQUEST RESULT
	io_Error - 0 for success, or an error code as defined in
	           <devices/trackdisk.h>

   SEE ALSO
	TD_REMCHANGEINT, <devices/trackdisk.h>, <exec/interrupts.h>,
	exec.library/Cause()