exec.library: Allocate/Deallocate functions must remain generic and not handler MemHe...
[AROS.git] / workbench / c / shellcommands / shellcommands_intern.h
blobb0662f8caac0003824fd09e652d2744190e7d4ff
1 /*
2 Copyright © 1995-2004, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: Internal data structures for expansion.library
6 Lang: english
7 */
9 #ifndef _SHELLCOMMANDS_INTERN_H
10 #define _SHELLCOMMANDS_INTERN_H
12 #include <exec/types.h>
13 #include <exec/libraries.h>
14 #include <dos/dosextens.h>
16 #include <aros/shcommands.h>
18 struct ShellCommandsBase {
19 struct Library sc_Lib;
21 int sc_Commands; /* Number of commands */
23 /* This is both a segment, and the data for the segment.
24 * We will feed in to DOS/AddSegment() the BPTR to
25 * &sc_Command[i].scs_Next as the 'seglist' to add.
27 struct ShellCommandSeg {
28 ULONG scs_Size; /* Length of segment in # of ULONGs */
29 ULONG scs_Next; /* Next segment (always 0 for this) */
30 struct FullJumpVec scs_Code; /* Code to jump to shell command */
31 CONST_STRPTR __attribute__((aligned(4))) scs_Name; /* Name of the segment */
32 } *sc_Command;
34 /* Bookkeeping */
35 BPTR sc_SegList;
37 APTR sc_DOSBase;
40 extern struct ExecBase *SysBase;
41 #define DOSBase (ShellCommandsBase->sc_DOSBase)
44 #endif /* _SHELLCOMMANDS_INTERN_H */