|
|
1.1 ! root 1: #include "u.h" ! 2: #include "../port/lib.h" ! 3: #include "mem.h" ! 4: #include "dat.h" ! 5: #include "fns.h" ! 6: #include "../port/error.h" ! 7: ! 8: #include "devtab.h" ! 9: ! 10: Dev devtab[]={ ! 11: { rootreset, rootinit, rootattach, rootclone, rootwalk, rootstat, rootopen, rootcreate, ! 12: rootclose, rootread, rootwrite, rootremove, rootwstat, }, ! 13: { consreset, consinit, consattach, consclone, conswalk, consstat, consopen, conscreate, ! 14: consclose, consread, conswrite, consremove, conswstat, }, ! 15: { envreset, envinit, envattach, envclone, envwalk, envstat, envopen, envcreate, ! 16: envclose, envread, envwrite, envremove, envwstat, }, ! 17: { mntreset, mntinit, mntattach, mntclone, mntwalk, mntstat, mntopen, mntcreate, ! 18: mntclose, mntread, mntwrite, mntremove, mntwstat, }, ! 19: { bitreset, bitinit, bitattach, bitclone, bitwalk, bitstat, bitopen, bitcreate, ! 20: bitclose, bitread, bitwrite, bitremove, bitwstat, }, ! 21: { uartreset, uartinit, uartattach, uartclone, uartwalk, uartstat, uartopen, uartcreate, ! 22: uartclose, uartread, uartwrite, uartremove, uartwstat, }, ! 23: { pipereset, pipeinit, pipeattach, pipeclone, pipewalk, pipestat, pipeopen, pipecreate, ! 24: pipeclose, piperead, pipewrite, piperemove, pipewstat, }, ! 25: { floppyreset, floppyinit, floppyattach, floppyclone, floppywalk, floppystat, floppyopen, floppycreate, ! 26: floppyclose, floppyread, floppywrite, floppyremove, floppywstat, }, ! 27: { atareset, atainit, ataattach, ataclone, atawalk, atastat, ataopen, atacreate, ! 28: ataclose, ataread, atawrite, ataremove, atawstat, }, ! 29: { srvreset, srvinit, srvattach, srvclone, srvwalk, srvstat, srvopen, srvcreate, ! 30: srvclose, srvread, srvwrite, srvremove, srvwstat, }, ! 31: { dupreset, dupinit, dupattach, dupclone, dupwalk, dupstat, dupopen, dupcreate, ! 32: dupclose, dupread, dupwrite, dupremove, dupwstat, }, ! 33: { procreset, procinit, procattach, procclone, procwalk, procstat, procopen, proccreate, ! 34: procclose, procread, procwrite, procremove, procwstat, }, ! 35: { rtcreset, rtcinit, rtcattach, rtcclone, rtcwalk, rtcstat, rtcopen, rtccreate, ! 36: rtcclose, rtcread, rtcwrite, rtcremove, rtcwstat, }, ! 37: { etherreset, etherinit, etherattach, etherclone, etherwalk, etherstat, etheropen, ethercreate, ! 38: etherclose, etherread, etherwrite, etherremove, etherwstat, }, ! 39: { ipreset, ipinit, ipattach, ipclone, ipwalk, ipstat, ipopen, ipcreate, ! 40: ipclose, ipread, ipwrite, ipremove, ipwstat, }, ! 41: { arpreset, arpinit, arpattach, arpclone, arpwalk, arpstat, arpopen, arpcreate, ! 42: arpclose, arpread, arpwrite, arpremove, arpwstat, }, ! 43: { iproutereset, iprouteinit, iprouteattach, iprouteclone, iproutewalk, iproutestat, iprouteopen, iproutecreate, ! 44: iprouteclose, iprouteread, iproutewrite, iprouteremove, iproutewstat, }, ! 45: { vgareset, vgainit, vgaattach, vgaclone, vgawalk, vgastat, vgaopen, vgacreate, ! 46: vgaclose, vgaread, vgawrite, vgaremove, vgawstat, }, ! 47: { dkreset, dkinit, dkattach, dkclone, dkwalk, dkstat, dkopen, dkcreate, ! 48: dkclose, dkread, dkwrite, dkremove, dkwstat, }, ! 49: { inconreset, inconinit, inconattach, inconclone, inconwalk, inconstat, inconopen, inconcreate, ! 50: inconclose, inconread, inconwrite, inconremove, inconwstat, }, ! 51: { scsireset, scsiinit, scsiattach, scsiclone, scsiwalk, scsistat, scsiopen, scsicreate, ! 52: scsiclose, scsiread, scsiwrite, scsiremove, scsiwstat, }, ! 53: { wrenreset, wreninit, wrenattach, wrenclone, wrenwalk, wrenstat, wrenopen, wrencreate, ! 54: wrenclose, wrenread, wrenwrite, wrenremove, wrenwstat, }, ! 55: { cdromreset, cdrominit, cdromattach, cdromclone, cdromwalk, cdromstat, cdromopen, cdromcreate, ! 56: cdromclose, cdromread, cdromwrite, cdromremove, cdromwstat, }, ! 57: }; ! 58: Rune *devchar=L"/ceMbt|fHsdprlIaPvkiSwR"; ! 59: extern Qinfo perminfo; ! 60: extern void stiplink(void); ! 61: extern void stfcalllink(void); ! 62: extern void stasynclink(void); ! 63: extern void sturplink(void); ! 64: extern void ether509link(void); ! 65: extern void ether8003link(void); ! 66: extern void ether2000link(void); ! 67: extern void vgaclgd542xlink(void); ! 68: extern void vgaet4000link(void); ! 69: extern void vgas3link(void); ! 70: extern void vgabt485link(void); ! 71: extern void vgatvp3020link(void); ! 72: extern uchar fscode[]; ! 73: extern ulong fslen; ! 74: void streaminit(void){ ! 75: newqinfo(&perminfo); ! 76: stiplink(); ! 77: stfcalllink(); ! 78: stasynclink(); ! 79: sturplink(); ! 80: ether509link(); ! 81: ether8003link(); ! 82: ether2000link(); ! 83: vgaclgd542xlink(); ! 84: vgaet4000link(); ! 85: vgas3link(); ! 86: vgabt485link(); ! 87: vgatvp3020link(); ! 88: addrootfile("fs", fscode, fslen); ! 89: } ! 90: int cpuserver = 0; ! 91: void consdebug(void){} ! 92: int incondev = 0; ! 93: char *conffile = "pccd"; ! 94: ulong kerndate = KERNDATE;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.