00001 #ifndef starlet_h
00002 #define starlet_h
00003
00004 #include <zarg.h>
00005
00006
00007
00008
00009
00010 struct _iosb;
00011 struct _generic_64;
00012 struct _lksb;
00013
00014 #define __unknown_params
00015
00016 int sys_testcode(void);
00017
00018
00019
00020
00021
00022 int sys_setprn( void *prcnam);
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 int sys_setpri(unsigned int *pidadr, void *prcnam,
00035 unsigned int pri, unsigned int *prvpri,
00036 unsigned int *pol, unsigned int *prvpol);
00037
00038
00039
00040
00041
00042
00043
00044
00045 int sys_dclast(void (*astadr)(unsigned long),
00046 unsigned long astprm, unsigned int acmode);
00047
00048 int sys_hiber(void);
00049
00050 int sys_waitfr(unsigned int efn);
00051
00052 int sys_wfland(unsigned int efn, unsigned int mask);
00053
00054 int sys_wflor (unsigned int efn, unsigned int mask);
00055
00056 int sys_clref (unsigned int efn);
00057
00058 int sys_setime (unsigned long long *timadr);
00059
00060 int sys_setimr (unsigned int efn, signed long long *daytim,
00061 void (*astadr)(long), unsigned
00062 long reqidt, unsigned int flags);
00063
00064 int sys_cantim (unsigned long long reqidt, unsigned int acmode);
00065
00066 int sys_numtim (unsigned short int timbuf [7], unsigned long long * timadr);
00067
00068 int sys_gettim (unsigned long long * timadr);
00069
00070 int sys_schdwk(unsigned int *pidadr, void *prcnam, signed long long * daytim, signed long long * reptim);
00071
00072 int sys_resume (unsigned int *pidadr, void *prcnam);
00073
00074 int sys_exit(unsigned int code);
00075
00076 int sys_forcex(unsigned int *pidadr, void *prcnam, unsigned int code);
00077
00078 int sys_setef(unsigned int efn);
00079
00080 int sys_synch(unsigned int efn, struct _iosb *iosb);
00081
00082 int sys_readef(unsigned int efn, unsigned int *state);
00083
00084 int sys_enqw (unsigned int efn, unsigned int lkmode, struct _lksb *lksb, unsigned int flags, void *resnam, unsigned int parid, void (*astadr)(), unsigned long astprm, void (*blkastadr)(), unsigned int acmode, unsigned int rsdm_id);
00085
00086 int sys_enq (unsigned int efn, unsigned int lkmode, struct _lksb *lksb, unsigned int flags, void *resnam, unsigned int parid, void (*astadr)(), unsigned long astprm, void (*blkastadr)(), unsigned int acmode, unsigned int rsdm_id);
00087
00088 int sys_deq(unsigned int lkid, void *valblk, unsigned int acmode, unsigned int flags);
00089
00090 int sys_getlki(unsigned int efn, unsigned int *lkidadr,void *itmlst, struct _iosb *iosb, void (*astadr)(int), int astprm, unsigned int reserved);
00091
00092 int sys_getlkiw(unsigned int efn, unsigned int *lkidadr,void *itmlst, struct _iosb *iosb, void (*astadr)(int), int astprm, unsigned int reserved);
00093
00094 int sys_asctim (unsigned short int *timlen, void *timbuf,
00095 unsigned long long *timadr, char cvtflg);
00096
00097 int sys_bintim (void *timbuf, unsigned long long *timadr);
00098
00099 int sys_crelnm (unsigned int *attr, void *tabnam, void *lognam, unsigned char *acmode, void *itmlst);
00100
00101 int sys_crelnt (unsigned int *attr, void *resnam, unsigned
00102 int *reslen, unsigned int *quota,
00103 unsigned short *promsk, void *tabnam, void
00104 *partab, unsigned char *acmode);
00105
00106 int sys_dellnm (void *tabnam, void *lognam, unsigned char *acmode);
00107
00108 int sys_trnlnm (unsigned int *attr, void *tabnam, void
00109 *lognam, unsigned char *acmode, void *itmlst);
00110
00111 int sys_dassgn(unsigned short int chan);
00112
00113 int sys_assign(void *devnam, unsigned short int *chan,unsigned int acmode, void *mbxnam,int flags);
00114 #define sys_assign(...) sys$assign(_buildargz5(__VA_ARGS__))
00115
00116 int sys_qiow(unsigned int efn, unsigned short int chan, unsigned int func,
00117 struct _iosb *iosb, void(*astadr)(__unknown_params), long astprm,
00118 void *p1, long p2, long p3, long p4, long p5, long p6);
00119
00120 int sys_qio(unsigned int efn, unsigned short int chan, unsigned int func,
00121 struct _iosb *iosb, void(*astadr)(__unknown_params), long astprm,
00122 void *p1, long p2, long p3, long p4, long p5, long p6);
00123
00124 int sys_clrast(void);
00125
00126 int sys_setast(char enbflg);
00127
00128 int sys_ascefc(unsigned int efn, void *name, char prot, char perm);
00129
00130 int sys_dacefc(unsigned int efn);
00131
00132 int sys_dlcefc(void *name);
00133
00134 int sys_crembx (char prmflg, unsigned short int *chan, unsigned int maxmsg, unsigned int bufquo, unsigned int promsk, unsigned int acmode, void *lognam,long flags,...);
00135
00136 int sys_delmbx (unsigned short int chan);
00137
00138 int sys_getdvi(unsigned int efn, unsigned short int chan, void *devnam, void *itmlst, struct _iosb *iosb, void (*astadr)(), int astprm, unsigned long long *nullarg);
00139
00140 int sys_getdviw(unsigned int efn, unsigned short int chan, void *devnam, void *itmlst, struct _iosb *iosb, void (*astadr)(), int astprm, unsigned long long *nullarg);
00141
00142 int sys_device_scan(void *return_devnam, unsigned short int *retlen, void *search_devnam, void *itmlst, unsigned long long *contxt);
00143
00144 int sys_mount(void *itmlst);
00145
00146 struct _fab;
00147
00148 int sys_close (struct _fab * fab, void * err, void * suc);
00149 int sys_connect (struct _fab * fab, void * err, void * suc);
00150 int sys_create (struct _fab * fab, void * err, void * suc);
00151 int sys_delete (struct _fab * fab, void * err, void * suc);
00152 int sys_disconnect (struct _fab * fab, void * err, void * suc);
00153 int sys_display (struct _fab * fab, void * err, void * suc);
00154 int sys_enter (struct _fab * fab, void * err, void * suc);
00155 int sys_erase (struct _fab * fab, void * err, void * suc);
00156 int sys_extend (struct _fab * fab, void * err, void * suc);
00157 int sys_find (struct _fab * fab, void * err, void * suc);
00158 int sys_flush (struct _fab * fab, void * err, void * suc);
00159 int sys_free (struct _fab * fab, void * err, void * suc);
00160 int sys_get (struct _fab * fab, void * err, void * suc);
00161 int sys_modify (struct _fab * fab, void * err, void * suc);
00162 int sys_nxtvol (struct _fab * fab, void * err, void * suc);
00163 int sys_open (struct _fab * fab, void * err, void * suc);
00164 int sys_parse (struct _fab * fab, void * err, void * suc);
00165 int sys_put (struct _fab * fab, void * err, void * suc);
00166 int sys_read (struct _fab * fab, void * err, void * suc);
00167 int sys_release (struct _fab * fab, void * err, void * suc);
00168 int sys_remove (struct _fab * fab, void * err, void * suc);
00169 int sys_rename (struct _fab * fab, void * err, void * suc);
00170 int sys_rewind (struct _fab * fab, void * err, void * suc);
00171 int sys_search (struct _fab * fab, void * err, void * suc);
00172 int sys_space (struct _fab * fab, void * err, void * suc);
00173 int sys_truncate (struct _fab * fab, void * err, void * suc);
00174 int sys_update (struct _fab * fab, void * err, void * suc);
00175 int sys_wait (struct _fab * fab, void * err, void * suc);
00176 int sys_write (struct _fab * fab, void * err, void * suc);
00177 int sys_filescan (void *srcstr, void *valuelst, ...);
00178 #define sys_filescan(...) sys$filescan(_buildargz5(__VA_ARGS__))
00179 int sys_setddir2 (struct _fab * fab, void * err, void * suc);
00180 int sys_setdfprot (struct _fab * fab, void * err, void * suc);
00181 int sys_ssvexc (struct _fab * fab, void * err, void * suc);
00182 int sys_rmsrundwn (struct _fab * fab, void * err, void * suc);
00183
00184 struct struct_crelnt {
00185 unsigned int *attr;
00186 void *resnam;
00187 unsigned int *reslen;
00188 unsigned int *quota;
00189 unsigned short *promsk;
00190 void *tabnam;
00191 void *partab;
00192 unsigned char *acmode;
00193 };
00194
00195 struct struct_setpri {
00196 unsigned int *pidadr;
00197 void *prcnam;
00198 unsigned int pri;
00199 unsigned int *prvpri;
00200 unsigned int*pol;
00201 unsigned int *prvpol;
00202 };
00203
00204 struct struct_qio {
00205 unsigned int efn;
00206 unsigned short int chan;
00207 unsigned int func;
00208 struct _iosb *iosb;
00209 void (*astadr)(long);
00210 long astprm;
00211 void *p1;
00212 long p2;
00213 long p3;
00214 long p4;
00215 long p5;
00216 long p6;
00217 };
00218
00219 struct struct_enq {
00220 unsigned int efn;
00221 unsigned int lkmode;
00222 struct _lksb *lksb;
00223 unsigned int flags;
00224 void *resnam;
00225 unsigned int parid;
00226 void (*astadr)();
00227 unsigned long astprm;
00228 void (*blkastadr)();
00229 unsigned int acmode;
00230 unsigned int rsdm_id;
00231 unsigned long null_arg;
00232 };
00233
00234 struct struct_getlki {
00235 unsigned int efn;
00236 unsigned int *lkidadr;
00237 void *itmlst;
00238 struct _iosb *iosb;
00239 void (*astadr)(int);
00240 int astprm;
00241 unsigned int reserved;
00242 };
00243
00244 struct struct_crembx {
00245 char prmflg;
00246 unsigned short int *chan;
00247 unsigned int maxmsg;
00248 unsigned int bufquo;
00249 unsigned int promsk;
00250 unsigned int acmode;
00251 void *lognam;
00252 long flags;
00253 };
00254
00255 struct struct_mgblsc {
00256 struct _va_range *inadr;
00257 struct _va_range *retadr;
00258 unsigned int acmode;
00259 unsigned int flags;
00260 void *gsdnam;
00261 struct _secid *ident;
00262 unsigned int relpag;
00263 };
00264
00265 struct struct_crmpsc {
00266 struct _va_range *inadr;
00267 struct _va_range *retadr;
00268 unsigned int acmode;
00269 unsigned int flags;
00270 void *gsdnam;
00271 unsigned long long * ident;
00272 unsigned int relpag;
00273 unsigned int chan;
00274 unsigned int pagcnt;
00275 unsigned int vbn;
00276 unsigned int prot;
00277 unsigned int pfc;
00278 };
00279
00280 struct struct_create_region_32 {
00281 unsigned long length;
00282 unsigned int region_prot;
00283 unsigned int flags;
00284 unsigned long long *return_region_id;
00285 void **return_va;
00286 unsigned long *return_length;
00287 unsigned long start_va;
00288 };
00289
00290 struct struct_args {
00291 unsigned long s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16;
00292 };
00293
00294 struct struct_getjpi {
00295 unsigned int efn;
00296 unsigned int *pidadr;
00297 void * prcnam;
00298 void *itmlst;
00299 struct _iosb *iosb;
00300 void (*astadr)();
00301 unsigned long long astprm;
00302 };
00303
00304 struct struct_getdvi {
00305 unsigned int efn;
00306 unsigned short int chan;
00307 void *devnam;
00308 void *itmlst;
00309 struct _iosb *iosb;
00310 void (*astadr)();
00311 int astprm;
00312 unsigned long long *nullarg;
00313 };
00314
00315 #endif
00316