137b86fb0f52ee9de01bb82f333d299a30d407cd
[tpg/acess2.git] / Usermode / Libraries / ld-acess.so_src / include_exp / acess / devices / pty.h
1 /*
2  * Acess2 User Core
3  * - By John Hodge (thePowersGang)
4  * 
5  * acess/devices/pty.h
6  * - PTY Device type IOCtls
7  */
8 #ifndef _ACESS_DEVICES_PTY_H_
9 #define _ACESS_DEVICES_PTY_H_
10
11
12 #include "../devices.h"
13
14 #define PTYSFLAG_ILOCAL 0x001   //!< Input modes are handled in the server process
15 #define PTYSFLAG_SMODE  0x002   //!< Inform server of mode changes by the user
16
17 #define PTYIMODE_CANON  0x001   //!< Line-buffered input
18 #define PTYIMODE_ECHO   0x002   //!< Echo input characters
19 #define PTYIMODE_RAW    0x004   //!< Disable all input processing
20
21 #define PTYOMODE_BUFFMT 0x003
22 #define PTYBUFFMT_TEXT   0x000
23 #define PTYBUFFMT_FB     0x001
24 #define PTYBUFFMT_2DCMD  0x002
25 #define PTYBUFFMT_3DCMD  0x003
26
27 /*
28  * Note: When setting dimensions from a client, it is up to the server what fields are used.
29  * This is usually dependent on the current output mode.
30  */
31 struct ptydims
32 {
33         short   W;
34         short   H;
35         short   PW;
36         short   PH;
37 } PACKED;
38 struct ptymode
39 {
40         unsigned int    OutputMode;
41         unsigned int    InputMode;
42 } PACKED;
43
44 enum
45 {
46         PTY_IOCTL_GETMODE = 4,
47         PTY_IOCTL_SETMODE,
48         PTY_IOCTL_GETDIMS,
49         PTY_IOCTL_SETDIMS,
50         PTY_IOCTL_GETID,
51         PTY_IOCTL_SETID,
52 };
53
54 #endif
55

UCC git Repository :: git.ucc.asn.au