/*
 * Reconstructed by Olaf 'Rhialto' Seibert from the
 * original binary "parnet.device" (because it was
 * missing from the distribution) 16-Jul-1993
 */

#ifndef PARNET_SRC
typedef struct Device *Device;
typedef struct Unit   *Unit;
#endif

typedef
struct IOParReq {
    struct Message  io_Message;
    Device	   *io_Device;
    Unit	   *io_Unit;
    UWORD	    io_Command;
    UBYTE	    io_Flags;
    BYTE	    io_Error;
    ULONG	    io_Actual;
    ULONG	    io_Length;
    APTR	    io_Data;
    ULONG	    io_Offset;

    UWORD	    io_Port;	    /* 0x30 */
    UWORD	    io_Addr;	    /* 0x32 */
    APTR	    io_Data2;	    /* 0x34 */
    ULONG	    io_Length2;     /* 0x38 */
} IOParReq;

#define PPERR_NOBITSRES     -31     /* 0xdf */
#define PPERR_NOPORTRES     -32     /* 0xe0 */
#define PPERR_NOTASK	    -34     /* 0xde */
#define PPERR_NOINT	    -35     /* 0xdd */
#define PPERR_WARN_OVFLOW   -41     /* 0xd7 */
#define PPERR_PORT_IN_USE   -42     /* 0xd6 */

#define PRO_MASK	    0x1F    /* io_Flags */
#define PRO_CTL 	    0x00
#define PRO_DGRAM	    0x01
#define PRO_STREAM	    0x02
#define PRO_LAST	    0x02

#define PPD_SETADDR	    (CMD_NONSTD + 0)
#define PPD_SETTO	    (CMD_NONSTD + 1)

