/* bios.c */ long getmpb P_((void *ptr)); long bconstat P_((int dev)); long bconin P_((int dev)); long bconout P_((int dev, int c)); long ubconstat P_((int dev)); long ubconin P_((int dev)); long ubconout P_((int dev, int c)); long rwabs P_((int rwflag, void *buffer, int number, int recno, int dev, long lrecno)); long setexc P_((int number, long vector)); long tickcal P_((void)); long getbpb P_((int dev)); long bcostat P_((int dev)); long ubcostat P_((int dev)); long mediach P_((int dev)); long drvmap P_((void)); long kbshift P_((int mode)); long bflush P_((void)); void init_bios P_((void)); int checkkeys P_((void)); /* xbios.c */ long supexec P_((Func funcptr, long a1, long a2, long a3, long a4, long a5)); long midiws P_((int, const char *)); int mapin P_((int)); long uiorec P_((int)); long rsconf P_((int, int, int, int, int, int)); long bconmap P_((int)); void init_xbios P_((void)); /* console.c */ long file_instat P_((int fh)); long file_outstat P_((int fh)); long file_getchar P_((int fh, int mode)); long file_putchar P_((int fh, long c, int mode)); long c_conin P_((void)); long c_conout P_((int c)); long c_auxin P_((void)); long c_auxout P_((int c)); long c_prnout P_((int c)); long c_rawio P_((int c)); long c_rawcin P_((void)); long c_necin P_((void)); long c_conws P_((const char *str)); long c_conrs P_((char *buf)); long c_conis P_((void)); long c_conos P_((void)); long c_prnos P_((void)); long c_auxis P_((void)); long c_auxos P_((void)); /* dos.c */ long s_version P_((void)); long s_uper P_((long new_ssp)); long t_getdate P_((void)); long t_setdate P_((int date)); long t_gettime P_((void)); long t_settime P_((int time)); long s_yield P_((void)); long p_renice P_((int pid, int delta)); long p_nice P_((int delta)); long p_getpid P_((void)); long p_getppid P_((void)); long p_getpgrp P_((void)); long p_setpgrp P_((int pid, int newgrp)); long p_getuid P_((void)); long p_getgid P_((void)); long p_geteuid P_((void)); long p_getegid P_((void)); long p_setuid P_((int id)); long p_setgid P_((int id)); long p_usrval P_((long arg)); long p_umask P_((unsigned mode)); long p_domain P_((int arg)); long p_rusage P_((long *r)); long p_setlimit P_((int i, long v)); long p_pause P_((void)); long t_alarm P_((long x)); long s_ysconf P_((int which)); void init_dos P_((void)); /* dosdir.c */ long d_setdrv P_((int d)); long d_getdrv P_((void)); long d_free P_((long *buf, int d)); long d_create P_((const char *path)); long d_delete P_((const char *path)); long d_setpath P_((const char *path)); long d_getpath P_((char *path, int drv)); long f_setdta P_((DTABUF *dta)); long f_getdta P_((void)); long f_sfirst P_((const char *path, int attrib)); long f_snext P_((void)); long f_attrib P_((const char *name, int rwflag, int attr)); long f_delete P_((const char *name)); long f_rename P_((int junk, const char *old, const char *new)); long d_pathconf P_((const char *name, int which)); long d_opendir P_((const char *path, int flags)); long d_readdir P_((int len, long handle, char *buf)); long d_rewind P_((long handle)); long d_closedir P_((long handle)); long f_xattr P_((int flag, const char *name, XATTR *xattr)); long f_link P_((const char *old, const char *new)); long f_symlink P_((const char *old, const char *new)); long f_readlink P_((int buflen, char *buf, const char *linkfile)); long d_cntl P_((int cmd, const char *name, long arg)); long f_chown P_((const char *name, int uid, int gid)); long f_chmod P_((const char *name, unsigned mode)); long d_lock P_((int mode, int drv)); /* dosfile.c */ FILEPTR * do_open P_((const char *name, int mode, int attr, XATTR *x)); long do_pclose P_((PROC *p, FILEPTR *f)); long do_close P_((FILEPTR *f)); long f_open P_((const char *name, int mode)); long f_create P_((const char *name, int attrib)); long f_close P_((int fh)); long f_read P_((int fh, long count, char *buf)); long f_write P_((int fh, long count, const char *buf)); long f_seek P_((long place, int fh, int how)); long f_dup P_((int fh)); long f_force P_((int newh, int oldh)); long f_datime P_((short *timeptr, int fh, int rwflag)); long f_lock P_((int fh, int mode, long start, long length)); long f_pipe P_((short *usrh)); long f_cntl P_((int fh, long arg, int cmd)); long f_select P_((unsigned timeout, long *rfdp, long *wfdp, long *xfdp)); long f_midipipe P_((int pid, int in, int out)); /* dosmem.c */ long m_addalt P_((long start, long size)); long _do_malloc P_((MMAP map, long size, int mode)); long m_xalloc P_((long size, int mode)); long m_alloc P_((long size)); long m_free P_((virtaddr block)); long m_shrink P_((int dummy, virtaddr block, long size)); long p_exec P_((int mode, void *ptr1, void *ptr2, void *ptr3)); long terminate P_((int code, int que)); long p_term P_((int code)); long p_term0 P_((void)); long p_termres P_((long save, int code)); long p_wait3 P_((int nohang, long *rusage)); long p_wait P_((void)); long p_vfork P_((void)); long p_fork P_((void)); /* dossig.c */ long p_kill P_((int pid, int sig)); long p_sigaction P_((int sig, const struct sigaction *act, struct sigaction *oact)); long p_signal P_((int sig, long handler)); long p_sigblock P_((ulong mask)); long p_sigsetmask P_((ulong mask)); long p_sigpending P_((void)); long p_sigpause P_((ulong mask)); /* filesys.c */ void init_drive P_((int drv)); void init_filesys P_((void)); void load_filesys P_((void)); void close_filesys P_((void)); void changedrv P_((unsigned drv)); int disk_changed P_((int drv)); long relpath2cookie P_((fcookie *dir, const char *path, char *lastnm, fcookie *res, int depth)); long path2cookie P_((const char *path, char *lastname, fcookie *res)); FILEPTR *new_fileptr P_((void)); void dispose_fileptr P_((FILEPTR *f)); int denyshare P_((FILEPTR *list, FILEPTR *newfileptr)); int denyaccess P_((XATTR *, unsigned)); LOCK *denylock P_((LOCK *list, LOCK *newlock)); long dir_access P_((fcookie *, unsigned)); int has_wild P_((const char *name)); void copy8_3 P_((char *dest, const char *src)); int pat_match P_((const char *name, const char *template)); int samefile P_((fcookie *, fcookie *)); /* main.c */ void restr_intr P_((void)); void enter_kernel P_((void)); void leave_kernel P_((void)); void zeroexit P_((void)); int main P_((int argc, char **argv, char **envp)); void install_cookies P_((void)); void load_config P_((void)); /* mem.c */ void init_mem P_((void)); int add_region P_((MMAP map, ulong place, ulong size, unsigned mflags)); void init_core P_((void)); void init_swap P_((void)); MEMREGION *new_region P_((void)); void dispose_region P_((MEMREGION *m)); virtaddr attach_region P_((PROC *proc, MEMREGION *reg)); void detach_region P_((PROC *proc, MEMREGION *reg)); MEMREGION *get_region P_((MMAP map, ulong size)); void free_region P_((MEMREGION *reg)); long shrink_region P_((MEMREGION *reg, ulong newsize)); long max_rsize P_((MMAP map)); long tot_rsize P_((MMAP map, int flag)); virtaddr alloc_region P_((MMAP map, ulong size)); MEMREGION *create_env P_((const char *env)); MEMREGION *create_base P_((const char *cmd, MEMREGION *env, ulong flags, ulong prgsize)); MEMREGION *load_region P_((const char *name, MEMREGION *env, const char *cmdlin, XATTR *x)); void rts P_((void)); PROC *exec_region P_((PROC *p, MEMREGION *mem, int thread)); long memused P_((PROC *p)); void recalc_maxmem P_((PROC *p)); int valid_address P_((long addr)); void DUMPMEM P_((MMAP map)); void sanity_check P_((MMAP map)); /* proc.c */ PROC *new_proc P_((void)); void dispose_proc P_((PROC *p)); PROC *fork_proc P_((void)); void init_proc P_((void)); void reset_priorities P_((void)); void run_next P_((PROC *p, int slices)); void fresh_slices P_((int slices)); void add_q P_((int que, PROC *proc)); void rm_q P_((int que, PROC *proc)); void preempt P_((void)); void sleep P_((int que, long cond)); void wake P_((int que, long cond)); void wakeselect P_((long param)); void check_time P_((void)); void DUMPPROC P_((void)); /* signal.c */ long killgroup P_((int pgrp, int sig)); void post_sig P_((PROC *p, int sig)); void check_sigs P_((void)); void raise P_((int sig)); void bombs P_((int sig)); void handle_sig P_((int sig)); long p_sigreturn P_((void)); void stop P_((int sig)); void exception P_((int sig)); void sigbus P_((void)); void sigaddr P_((void)); void sigill P_((void)); void sigpriv P_((void)); void sigfpe P_((void)); void sigtrap P_((void)); /* timeout.c */ TIMEOUT *addtimeout P_((long delta, void (*func)(PROC *p))); void cancelalltimeouts P_((void)); void canceltimeout P_((TIMEOUT *which)); void timeout P_((void)); void checkalarms P_((void)); void nap P_((unsigned n)); /* tty.c */ long tty_read P_((FILEPTR *f, void *buf, long nbytes)); long tty_write P_((FILEPTR *f, const void *buf, long nbytes)); long tty_ioctl P_((FILEPTR *f, int mode, void *arg)); long tty_getchar P_((FILEPTR *f, int mode)); long tty_putchar P_((FILEPTR *f, long data, int mode)); /* util.c */ MEMREGION *addr2mem P_((virtaddr a)); PROC *pid2proc P_((int pid)); int newpid P_((void)); void zero P_((char *place, long size)); void *kmalloc P_((long size)); void *kcore P_((long size)); void kfree P_((void *place)); void *umalloc P_((long size)); void ufree P_((void *block)); void ms_time P_((ulong ms, short *timeptr)); long unixtim P_((unsigned time, unsigned date)); long dostim P_((long t)); int strnicmp P_((const char *str1, const char *str2, int len)); int stricmp P_((const char *str1, const char *str2)); char *strlwr P_((char *s)); char *strupr P_((char *s)); #ifdef OWN_LIB int strncmp P_((const char *str1, const char *str2, int len)); int strcmp P_((const char *str1, const char *str2)); char *strcat P_((char *, const char *)); char *strcpy P_((char *, const char *)); char *strncpy P_((char *, const char *, int)); int strlen P_((const char *)); char *strrchr P_((const char *, int)); int toupper P_((int)); int tolower P_((int)); int atoi P_((const char *)); #endif /* OWN_LIB */ /* biosfs.c */ void biosfs_init P_((void)); void mouse_handler P_((const char *buf)); long nocreat P_((fcookie *dir, const char *name, unsigned mode, int attrib, fcookie *fc)); long nomkdir P_((fcookie *dir, const char *name, unsigned mode)); long nowritelabel P_((fcookie *dir, const char *name)); long noreadlabel P_((fcookie *dir, char *name, int namelen)); long nosymlink P_((fcookie *dir, const char *name, const char *to)); long noreadlink P_((fcookie *dir, char *buf, int buflen)); long nohardlink P_((fcookie *, const char *, fcookie *, const char *)); long nofscntl P_((fcookie *dir, const char *name, int cmd, long arg)); long nodskchng P_((int drv)); int set_auxhandle P_((PROC *, int)); /* pipefs.c */ /* procfs.c */ /* tosfs.c */ /* unifs.c */ void unifs_init P_((void)); /* debug.c */ int ksprintf P_((char *, const char *, ...)); void debug_ws P_((const char *s)); void TRACE P_((const char *s, ...)); void DEBUG P_((const char *s, ...)); void ALERT P_((const char *s, ...)); EXITING void FATAL P_((const char *s, ...)); EXITING void HALT P_((void)); void do_func_key P_((int)); /* rendez.c */ long p_msg P_((int mode, long mbid, char *ptr)); long p_semaphore P_((int mode, long id, long timeout)); void free_semaphores P_((int pid));