1 #ifndef REXX_REXXIO_H
    2 #define REXX_REXXIO_H
    3 
    4 /*
    5 	rexx io defines
    6 
    7 	Copyright © 2002 The MorphOS Development Team, All Rights Reserved.
    8 */
    9 
   10 #ifndef REXX_STORAGE_H
   11 # include <rexx/storage.h>
   12 #endif
   13 
   14 #pragma pack(2)
   15 
   16 
   17 #define RXBUFFSZ  204
   18 
   19 
   20 struct IoBuff
   21 {
   22 	struct RexxRsrc iobNode;
   23 	APTR            iobRpt;
   24 	LONG            iobRct;
   25 	LONG            iobDFH;
   26 	APTR            iobLock;
   27 	LONG            iobBct;
   28 	BYTE            iobArea[RXBUFFSZ];
   29 };
   30 
   31 /* Access modes */
   32 
   33 #define RXIO_EXIST  -1
   34 #define RXIO_STRF    0
   35 #define RXIO_READ    1
   36 #define RXIO_WRITE   2
   37 #define RXIO_APPEND  3
   38 
   39 
   40 /* Offset modes */
   41 
   42 #define RXIO_BEGIN  -1L
   43 #define RXIO_CURR    0L
   44 #define RXIO_END     1L
   45 
   46 
   47 #define LLOFFSET(rrp)  (rrp->rr_Arg1)
   48 #define LLVERS(rrp)    (rrp->rr_Arg2)
   49 
   50 #define CLVALUE(rrp)   ((STRPTR) rrp->rr_Arg1)
   51 
   52 
   53 struct RexxMsgPort
   54 {
   55 	struct RexxRsrc rmp_Node;
   56 	struct MsgPort  rmp_Port;
   57 	struct List     rmp_ReplyList;
   58 };
   59 
   60 
   61 /* Device types */
   62 
   63 #define DT_DEV  0L
   64 #define DT_DIR  1L
   65 #define DT_VOL  2L
   66 
   67 
   68 /* Packet types */
   69 
   70 #define ACTION_STACK  2002L
   71 #define ACTION_QUEUE  2003L
   72 
   73 
   74 #pragma pack()
   75 
   76 #endif