Fixes to comments.
[AROS.git] / compiler / include / dos / dostags.h
blobb0d1a40f5f91ee263beeb3b1bda1d78176ec484e
1 #ifndef DOS_DOSTAGS_H
2 #define DOS_DOSTAGS_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Tags for DOS routines
9 Lang: english
12 #ifndef UTILITY_TAGITEM_H
13 # include <utility/tagitem.h>
14 #endif
16 /**********************************************************************
17 ****************************** Processes *****************************
18 **********************************************************************/
20 /* Tags for CreateNewProc(). All tags, where no default is stated, the default
21 is inherited from the parent process. Additionally you may use tags for
22 AllocDosObject(DOS_CLI, ...). */
24 #define NP_Dummy (TAG_USER + 1000)
26 /* Exactly one of NP_Seglist or NP_Entry must be specified. */
27 /* (BPTR) Seglist of code for process. */
28 #define NP_Seglist (NP_Dummy + 1)
29 /* (BOOL) Free seglist on exit? (Default: TRUE) */
30 #define NP_FreeSeglist (NP_Dummy + 2)
31 /* (APTR) Entry point for process code. */
32 #define NP_Entry (NP_Dummy + 3)
34 /* (BPTR/struct FileHandle *) Input filehandle. (Default: NIL:) */
35 #define NP_Input (NP_Dummy + 4)
36 /* (BPTR/struct FileHandle *) Output filehandle. (Default: NIL:) */
37 #define NP_Output (NP_Dummy + 5)
38 /* (BOOL) Close input filehandle on exit? (Default: TRUE) */
39 #define NP_CloseInput (NP_Dummy + 6)
40 /* (BOOL) Close output filehandle in exit? (Default: TRUE) */
41 #define NP_CloseOutput (NP_Dummy + 7)
42 /* (BPTR/struct FileHandle *) Error filehandle. (Default: NIL:) */
43 #define NP_Error (NP_Dummy + 8)
44 /* (BOOL) Close error filehandle on exit? (Default: TRUE) */
45 #define NP_CloseError (NP_Dummy + 9)
47 /* (BPTR/struct FileLock *) Current directory for new task. */
48 #define NP_CurrentDir (NP_Dummy + 10)
49 /* (ULONG) Stacksize to use for the new process. Default is variable. */
50 #define NP_StackSize (NP_Dummy + 11)
51 /* (STRPTR) Name for the new process. (Default: "New Process") */
52 #define NP_Name (NP_Dummy + 12)
53 /* (LONG) Priority of the new process. */
54 #define NP_Priority (NP_Dummy + 13)
56 /* (APTR) Pointer to the console task. */
57 #define NP_ConsoleTask (NP_Dummy + 14)
58 /* (struct Window *) The processes default window. */
59 #define NP_WindowPtr (NP_Dummy + 15)
60 /* (BPTR/struct FileLock *) The home directory of the new process. This
61 defaults to the parents current directory. */
62 #define NP_HomeDir (NP_Dummy + 16)
63 /* (BOOL) Copy local environment variables? (Default: TRUE) */
64 #define NP_CopyVars (NP_Dummy + 17)
65 /* (BOOL) Create a CLI structure? (Default: FALSE) */
66 #define NP_Cli (NP_Dummy + 18)
68 /* The following two tags are only valid for CLI processes. */
69 /* (APTR) Path for the new process. */
70 #define NP_Path (NP_Dummy + 19)
71 /* (STRPTR) Name of the called program. */
72 #define NP_CommandName (NP_Dummy + 20)
73 /* If this tag is used, NP_Input must not be NULL. */
74 #define NP_Arguments (NP_Dummy + 21)
76 /* The following two tags do not work, yet. */
77 /* (BOOL) Notify parent, when process exits? (Default: FALSE) */
78 #define NP_NotifyOnDeath (NP_Dummy + 22)
79 /* (BOOL) Wait until called process returns. (Default: FALSE) */
80 #define NP_Synchronous (NP_Dummy + 23)
82 /* (APTR) Code that is to be called, when process exits. (Default: NULL) */
83 #define NP_ExitCode (NP_Dummy + 24)
84 /* (APTR) Optional data for NP_ExitCode. (Default: NULL) */
85 #define NP_ExitData (NP_Dummy + 25)
87 /* The following tags are AROS specific. */
88 /* (IPTR) User dependant data. Do with it, what you want to. (Default: NULL)
90 #define NP_UserData (NP_Dummy + 26)
93 /* Tags for SystemTagList(). Additionally you may use all the tags for
94 CreateNewProc(). */
96 #define SYS_Dummy (TAG_USER + 32)
98 /* The supplied filehandles are automatically closed, when the new process
99 exits, if SYS_Asynch is TRUE. If it is false, they remain opened. */
100 /* (BPTR/struct FileHandle *) Input filehandle. This must be a different
101 filehandle from that supplied to SYS_Output. Default is Input() of the
102 current process. */
103 #define SYS_Input (SYS_Dummy + 1)
104 /* (BPTR/struct FileHandle *) Output filehandle. This must be a different
105 filehandle from than supllied to SYS_Input. Default is Output() of the
106 current process. */
107 #define SYS_Output (SYS_Dummy + 2)
108 /* (BOOL) If FALSE, the execution of calling process is stopped, until the
109 new process has finished. */
110 #define SYS_Asynch (SYS_Dummy + 3)
111 /* If neither of the following two tags is specified, the boot-shell is used.
112 if SYS_UserShell is set to TRUE then the default user-shell will be used,
113 while CustomShell expects a string, which names a new shell. */
114 #define SYS_UserShell (SYS_Dummy + 4) /* (BOOL) */
115 #define SYS_CustomShell (SYS_Dummy + 5) /* (STRPTR) */
117 /* The following are AmigaOS4-compatible */
119 /* (BPTR/struct FileHandle *) Output filehandle. This must be a different
120 filehandle from than supllied to SYS_Input. Default is Error() of the
121 current process. */
122 #define SYS_Error (SYS_Dummy + 6)
124 /* The following are AROS-specific */
126 /* (BPTR/struct FileHandle *) This is the FileHandle from which the shell will try to read
127 commands to execute right after having executed the command supplied to SystemTagList()
128 If not specified it defaults to NIL: */
129 #define SYS_ScriptInput (SYS_Dummy + 11)
132 /* (BOOL) The shell is run as a "background shell", like when the Run command is
133 used. If the shell is in background mode, when the EOF is reached on
134 SYS_ScriptInput the shell will immediately exit, without trying to read from
135 SYS_Input. By default it's set to TRUE. */
137 #define SYS_Background (SYS_Dummy + 12)
138 /* (LONG *) ti_Data points to a memory location in which SystemTagList will store the
139 Cli number of the newly created cli process */
140 #define SYS_CliNumPtr (SYS_Dummy + 13)
142 /* (LONG) CLI type (see dos/cliinit.h) override. The defaults are:
143 * SYS_Asynch SYS_Background
144 * ---------- --------------
145 * CLI_SYSTEM FALSE TRUE
146 * CLI_ASYSTEM TRUE TRUE
147 * CLI_NEWCLI --- FALSE
149 #define SYS_CliType (SYS_Dummy + 13)
151 /* This is a *TAG VALUE*, not a tag. Use this together with SYS_Input, SYS_Output and
152 SYS_Error, to tell SystemTagList to *duplicate* the respective caller's streams.
154 Ie.: a TagItem like this
156 { SYS_Input, SYS_DupStream }
158 tells SystemTagList to duplicate the caller's Input() filehandle and use it as input file
159 handle of the shell.
161 The duplicated file handle is automatically closed. */
163 #define SYS_DupStream 1
165 /**********************************************************************
166 **************************** Miscellaneous ***************************
167 **********************************************************************/
169 /* Tags for AllocDosObject(). */
171 #define ADO_Dummy (TAG_USER + 2000)
173 /* Tags for DOS_FILEHANDLE only. */
174 /* Sets up the filehandle for the specified mode. Definitions are in
175 <dos/dos.h> */
176 #define ADO_FH_Mode (ADO_Dummy + 1) /* Sets up FH to the specified mode. */
178 /* Tags for DOS_CLI. If you do not specify these, dos will use reasonable
179 default values. All these tags specify the buffer length for certain
180 strings. */
181 /* Length of current directory buffer. */
182 #define ADO_DirLen (ADO_Dummy + 2)
183 /* Length of command name buffer. */
184 #define ADO_CommNameLen (ADO_Dummy + 3)
185 /* Length of command file buffer. */
186 #define ADO_CommFileLen (ADO_Dummy + 4)
187 /* Length of buffer for CLI prompt. */
188 #define ADO_PromptLen (ADO_Dummy + 5)
190 #endif /* DOS_DOSTAGS_H */