mac-rom/ProcessMgr/Aux.h
Elliot Nunn 4325cdcc78 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 09:52:23 +08:00

113 lines
4.8 KiB
C

/*
C Interface to the Macintosh Libraries
Copyright Apple Computer,Inc. 1987-9
All rights reserved.
*/
/*
These constants define selectors for the AUXDispatch call. This call
should be used only after using Gestalt to determine that the application
is running under A/UX.
*/
#ifndef unix
pascal long AUXDispatch(short selector, char *p)
= {0xABF9};
typedef pascal long
(*AUXDispatch_ptr)(short selector, char *p);
#endif unix
#define AUX_HIGHEST 0 /* return highest available selector , p is not used */
#define AUX_GET_ERRNO 1 /* get pointer to errno , p points to (int *) */
#define AUX_GET_PRINTF 2 /* get pointer to printf() , p points to ((*int) ()) */
#define AUX_GET_SIGNAL 3 /* get pointer to signal() , p points to ((*int) ()) */
#define AUX_GET_TIMEOUT 4 /* return nice timeout value in clock ticks , p is not used */
#define AUX_SET_SELRECT 5 /* set a mouse movement rectangle to use in */
/* future select() calls. p points to a Rect */
#define AUX_CHECK_KIDS 6 /* check to see if a given process has kids p points */
/* to an integer containing the process id */
#define AUX_POST_MODIFIED 7 /* post an event, with modifiers */
#define AUX_FIND_EVENT 8 /* search event queue for an event */
#define AUX_GET_UDEVFD 9 /* get pointer to udevfd */
/* p points to (int *) */
#define AUX_GET_CDEVFD 10 /* get pointer to cdevfd */
/* p points to (int *) */
#define AUX_GET_ENVIRON 11 /* get pointer to environ */
/* p points to (char ***) */
#define AUX_LOGOUT 12 /* call routine to do whatever it takes to logout */
#define AUX_SWITCH 13 /* process context switch */
#define AUX_GETTASK 14 /* get a/ux task descriptor */
#define AUX_GETANYEVENT 15 /* get any event from the event queue */
#define AUX_SETAUXMASK 16 /* a/ux events should be returned by GetOSEvent and */
/* OSEventAvail, p is an int */
#define AUX_STOPTIMER 17 /* turn off the vbl and time mgr interrupt */
#define AUX_STARTTIMER 18 /* turn on the vbl and time mgr interrupt */
#define AUX_SETTIMEOUT 19 /* set the timeout value for GetOSEvent */
#define AUX_SETBOUNDS 20 /* set the mouse moved region for GetOSEvent */
#define AUX_KILL 21 /* kill the specified process, p contains a pid */
#define AUX_FORKEXEC 22 /* fork and exec a new coff binary */
#define AUX_REG_SIGIO 23 /* register a function and mask for SIGIO muxing */
#define AUX_UNREG_SIGIO 24 /* unregister a function for SIGIO muxing */
#define AUX_VFS_VREFNUM 25 /* return the VREFNUM used for "/" */
#define AUX_CLEANFS 26 /* clean fs shutdown for Login */
#define AUX_TRIM_CACHE 27 /* dispatch to compact the File Manager cache */
#define AUX_ID_TO_PATH 28 /* translate a CNID to a *valid* UNIX path */
#define AUX_FS_FREE_SPACE 29 /* get the # of free bytes for a filesystem */
#define AUX_CHECK_TB_LAUNCH 30 /* check if OK to launch the file */
#define AUX_FS_USED_SPACE 31 /* get the # of used bytes for a filesystem */
#define AUX_SAME_FS 32 /* returns true if 2 dirIDs on same FS */
#define AUX_MNT_CD 33 /* try to mount any available CD-ROMs */
#define AUX_RESTART_DLOG 34 /* post restart dialog but don't restart */
#define AUX_SHUTDOWN_DLOG 35 /* post shutdown dialog but don't shutdown */
#define AUX_SECONDARY_INIT 36 /* Perform secondary initializations. */
#define AUX_COFFFSSPEC 37 /* Get fsspec for a coff binary, p is the taskid */
#define AUX_HOME_DIR 38 /* Get the cnid of the home directory */
#define AUX_GETUID 39 /* Get the effective user id */
#define AUX_POST_EVTREC 40 /* post an entire event record */
#define AUX_FSTYPE 41 /* return the UNIX file sys type for a dir */
#define AUX_MAP_ID 42 /* moral equiv to PBMapID() */
#define AUX_MAP_NAME 43 /* moral equiv to PBMapName() */
#define AUX_SAME_DIRS 44 /* returns TRUE if 2 dirs stat equal */
#define AUX_SYNC_DIR 45 /* Used to inform the File Mgr when to */
/* check dirs for open folders. */
#define AUX_BEGINAPPLICATION 46 /* Start up application */
#define AUX_ENABLECOFFLAUNCH 50 /* Enable launch of coff applications? */
#define MAX_SELECTOR AUX_ENABLECOFFLAUNCH
typedef struct
{
EventRecord event;
long timeout;
RgnHandle mouseBounds;
Boolean pullIt;
Boolean found;
short mask;
} GetAnyEventRec, *GetAnyEventPtr;
#define FIRST_AUX_EVENT 16
#define LAST_AUX_EVENT 18
enum
{
auxAttachEvent = FIRST_AUX_EVENT,
auxExitEvent,
auxSelectEvent
};
typedef struct
{
short vrefnum;
char *name;
short pid;
} ForkExecRec, *ForkExecPtr;
typedef struct {
struct FSSpec fsspec;
long taskid;
} CoffName;