1 #ifndef EXEC_IO_H 2 #define EXEC_IO_H 3 4 /* 5 exec io definitions (V50) 6 7 Copyright © 2002 The MorphOS Development Team, All Rights Reserved. 8 */ 9 10 #ifndef EXEC_PORTS_H 11 # include <exec/ports.h> 12 #endif 13 14 #pragma pack(2) 15 16 17 struct IORequest 18 { 19 struct Message io_Message; 20 struct Device *io_Device; 21 struct Unit *io_Unit; 22 UWORD io_Command; 23 UBYTE io_Flags; 24 BYTE io_Error; 25 }; 26 27 struct IOStdReq 28 { 29 struct Message io_Message; 30 struct Device *io_Device; 31 struct Unit *io_Unit; 32 UWORD io_Command; 33 UBYTE io_Flags; 34 BYTE io_Error; 35 ULONG io_Actual; 36 ULONG io_Length; 37 APTR io_Data; 38 ULONG io_Offset; 39 }; 40 41 #define DEV_BEGINIO (-30) 42 #define DEV_ABORTIO (-36) 43 44 #define IOB_QUICK 0 45 #define IOF_QUICK (1<<IOB_QUICK) 46 47 #define CMD_INVALID 0 48 #define CMD_RESET 1 49 #define CMD_READ 2 50 #define CMD_WRITE 3 51 #define CMD_UPDATE 4 52 #define CMD_CLEAR 5 53 #define CMD_STOP 6 54 #define CMD_START 7 55 #define CMD_FLUSH 8 56 #define CMD_NONSTD 9 57 58 59 #pragma pack() 60 61 #endif