{$ifndef EXEC_IO_H}
CONST EXEC_IO_H = 0;
{$ifndef EXEC_PORTS_H;incl"exec/ports.h";endif}
{$ifndef EXEC_DEVICES_H;incl"exec/devices.h";endif}
TYPE p_IORequest = ^IORequest;
     IORequest = record
                   io_Message: Message;
                   io_Device: p_Device;
                   io_Unit: p_Unit;
                   io_Command: Word;
                   io_Flags: Byte;
                   io_Error: Short
                 end;
     p_IOStdReq = ^IOStdReq;
     IOStdReq = record
                  io_Message: Message;
                  io_Device: p_Device;
                  io_Unit: p_Unit;
                  io_Command: Word;
                  io_Flags: Byte;
                  io_Error: Short;
                  io_Actual, io_Length: Long;
                  io_Data: Ptr;
                  io_Offset: Long
                end;
     p_IOExtTD = ^IOExtTD;
     IOExtTD = record
                 iotd_Req: IOStdReq;
                 iotd_Count, iotd_SecLabel: Long
               end;
CONST DEV_BEGINIO = -30;
      DEV_ABORTIO = -36;
      IOB_QUICK = 0;
      IOF_QUICK = $1;
      CMD_INVALID = 0;
      CMD_RESET = 1;
      CMD_READ = 2;
      CMD_WRITE = 3;
      CMD_UPDATE = 4;
      CMD_CLEAR = 5;
      CMD_STOP = 6;
      CMD_START = 7;
      CMD_FLUSH = 8;
      CMD_NONSTD = 9;
{$endif}
{$ifndef EXEC_IO_LIB }
Const EXEC_IO_LIB = 0;
Library SysBase:
-456: Function DoIO(a1: Ptr): Long;
-462: Procedure SendIO(a1: Ptr);
-468: Function CheckIO(a1: Ptr): Long;
-474: Procedure WaitIO(a1: Ptr);
-480: Procedure AbortIO(a1: Ptr);
-654: Function CreateIORequest(a0: p_MsgPort;d0: long): p_IOStdReq;
-654: Function CreateIOTDRequest(a0: p_MsgPort;d0: long): p_IOExtTD;
-660: Procedure DeleteIORequest(a0: p_IOStdReq);
-660: Procedure DeleteIOTDRequest(a0: p_IOExtTD)
end;
{$endif}
