mirror of
https://github.com/elliotnunn/sys7.1-doc-wip.git
synced 2024-11-10 08:05:11 +00:00
113 lines
4.8 KiB
C
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;
|