1 #ifndef DEVICES_SERIAL_H 2 #define DEVICES_SERIAL_H 3 4 /* 5 serial.device include 6 7 Copyright © 2002 The MorphOS Development Team, All Rights Reserved. 8 */ 9 10 #ifndef EXEC_IO_H 11 # include <exec/io.h> 12 #endif 13 14 #pragma pack(2) 15 16 17 struct IOTArray 18 { 19 ULONG TermArray0; 20 ULONG TermArray1; 21 }; 22 23 24 #define SER_DEFAULT_CTLCHAR 0x11130000 25 26 27 struct IOExtSer 28 { 29 struct IOStdReq IOSer; 30 31 ULONG io_CtlChar; 32 ULONG io_RBufLen; 33 ULONG io_ExtFlags; 34 ULONG io_Baud; 35 ULONG io_BrkTime; 36 struct IOTArray io_TermArray; 37 UBYTE io_ReadLen; 38 UBYTE io_WriteLen; 39 UBYTE io_StopBits; 40 UBYTE io_SerFlags; 41 UWORD io_Status; 42 }; 43 44 45 #define SDCMD_QUERY (CMD_NONSTD + 0) 46 #define SDCMD_BREAK (CMD_NONSTD + 1) 47 #define SDCMD_SETPARAMS (CMD_NONSTD + 2) 48 49 50 #define SERB_XDISABLED 7 51 #define SERF_XDISABLED (1<<SERB_XDISABLED) 52 #define SERB_EOFMODE 6 53 #define SERF_EOFMODE (1<<SERB_EOFMODE) 54 #define SERB_SHARED 5 55 #define SERF_SHARED (1<<SERB_SHARED) 56 #define SERB_RAD_BOOGIE 4 57 #define SERF_RAD_BOOGIE (1<<SERB_RAD_BOOGIE) 58 #define SERB_QUEUEDBRK 3 59 #define SERF_QUEUEDBRK (1<<SERB_QUEUEDBRK) 60 #define SERB_7WIRE 2 61 #define SERF_7WIRE (1<<SERB_7WIRE) 62 #define SERB_PARTY_ODD 1 63 #define SERF_PARTY_ODD (1<<SERB_PARTY_ODD) 64 #define SERB_PARTY_ON 0 65 #define SERF_PARTY_ON (1<<SERB_PARTY_ON) 66 67 #define IO_STATB_XOFFREAD 12 68 #define IO_STATF_XOFFREAD (1<<IO_STATB_XOFFREAD) 69 #define IO_STATB_XOFFWRITE 11 70 #define IO_STATF_XOFFWRITE (1<<IO_STATB_XOFFWRITE) 71 #define IO_STATB_READBREAK 10 72 #define IO_STATF_READBREAK (1<<IO_STATB_READBREAK) 73 #define IO_STATB_WROTEBREAK 9 74 #define IO_STATF_WROTEBREAK (1<<IO_STATB_WROTEBREAK) 75 #define IO_STATB_OVERRUN 8 76 #define IO_STATF_OVERRUN (1<<IO_STATB_OVERRUN) 77 78 79 #define SEXTB_MSPON 1 80 #define SEXTF_MSPON (1<<SEXTB_MSPON) 81 #define SEXTB_MARK 0 82 #define SEXTF_MARK (1<<SEXTB_MARK) 83 84 85 #define SerErr_DevBusy 1 86 #define SerErr_BaudMismatch 2 87 #define SerErr_BufErr 4 88 #define SerErr_InvParam 5 89 #define SerErr_LineErr 6 90 #define SerErr_ParityErr 9 91 #define SerErr_TimerErr 11 92 #define SerErr_BufOverflow 12 93 #define SerErr_NoDSR 13 94 #define SerErr_DetectedBreak 15 95 96 97 #ifdef DEVICES_SERIAL_H_OBSOLETE 98 99 #define SerErr_InvBaud 3 100 #define SerErr_NotOpen 7 101 #define SerErr_PortReset 8 102 #define SerErr_InitErr 10 103 #define SerErr_NoCTS 14 104 105 #define IOSTB_XOFFREAD 4 106 #define IOSTF_XOFFREAD (1<<IOSTB_XOFFREAD) 107 #define IOSTB_XOFFWRITE 3 108 #define IOSTF_XOFFWRITE (1<<IOSTB_XOFFWRITE) 109 #define IOSTB_READBREAK 2 110 #define IOSTF_READBREAK (1<<IOSTB_READBREAK) 111 #define IOSTB_WROTEBREAK 1 112 #define IOSTF_WROTEBREAK (1<<IOSTB_WROTEBREAK) 113 #define IOSTB_OVERRUN 0 114 #define IOSTF_OVERRUN (1<<IOSTB_OVERRUN) 115 116 #define IOSERB_BUFRREAD 7 117 #define IOSERF_BUFRREAD (1<<IOSERB_BUFRREAD) 118 #define IOSERB_QUEUED 6 119 #define IOSERF_QUEUED (1<<IOSERB_QUEUED) 120 #define IOSERB_ABORT 5 121 #define IOSERF_ABORT (1<<IOSERB_ABORT) 122 #define IOSERB_ACTIVE 4 123 #define IOSERF_ACTIVE (1<<IOSERB_ACTIVE) 124 125 #endif /* DEVICES_SERIAL_H_OBSOLETE */ 126 127 128 #define SERIALNAME "serial.device" 129 130 131 #pragma pack() 132 133 #endif /* DEVICES_SERIAL_H */