#ifndef REXX_REXXIO_H
#define REXX_REXXIO_H

#ifndef REXX_STORAGE_H
#include <rexx/storage.h>
#endif

#define RXBUFFSZ  204

struct IoBuff
{
  struct RexxRsrc iobNode;
  APTR      iobRpt;
  SLONG     iobRct;
  SLONG     iobDFH;
  APTR      iobLock;
  SLONG     iobBct;
  CHAR      iobArea[RXBUFFSZ];
};

#define RXIO_EXIST   -1
#define RXIO_STRF    0
#define RXIO_READ    1
#define RXIO_WRITE   2
#define RXIO_APPEND  3

#define RXIO_BEGIN   -1
#define RXIO_CURR     0
#define RXIO_END      1

#define LLOFFSET(rrp) (rrp->rr_Arg1)
#define LLVERS(rrp)   (rrp->rr_Arg2)
#define CLVALUE(rrp) ((STRPTR) rrp->rr_Arg1)

struct RexxMsgPort
{
  struct RexxRsrc rmp_Node;
  struct MsgPort  rmp_Port;
  struct List     rmp_ReplyList;
};

#define DT_DEV  0
#define DT_DIR  1
#define DT_VOL  2

/*#define ACTION_STACK 2002L */
/*#define ACTION_QUEUE 2003L */

#endif
