| plan 9 kernel history: overview | file list | diff list |
1992/1218/pc/devfloppy.c (diff list | history)
| 1992/1217/sys/src/9/pc/devfloppy.c:245,258 – 1992/1218/sys/src/9/pc/devfloppy.c:245,262 (short | long | prev | next) | ||
| 1991/0731 | Drive *dp; | |
| 1991/0802 | Type *t; | |
| 1992/1006 | uchar equip; | |
| 1992/1218 | ulong maxtsize; | |
| 1991/0731 | ||
| 1991/0802 | /* * init dependent parameters */ | |
| 1992/1218 | maxtsize = 0; | |
| 1991/0802 | for(t = floppytype; t < &floppytype[NTYPES]; t++){ t->cap = t->bytes * t->heads * t->sectors * t->tracks; t->bcode = b2c[t->bytes/128]; | |
| 1991/0924 | t->tsize = t->bytes * t->sectors; | |
| 1992/1218 | if(maxtsize < t->tsize) maxtsize = t->tsize; | |
| 1991/0802 | } /* | |
| 1992/1217/sys/src/9/pc/devfloppy.c:277,283 – 1992/1218/sys/src/9/pc/devfloppy.c:281,287 | ||
| 1992/1006 | dp->dt = T1440kb; setdef(dp); dp->cyl = -1; /* because we don't know */ | |
| 1992/1113 |
| |
| 1992/1218 | dp->cache = (uchar*)xspanalloc(maxtsize, BY2PG, 64*1024); | |
| 1991/0924 | dp->ccyl = -1; | |
| 1991/0925 | dp->vers = 1; | |
| 1991/0731 | } | |
| 1992/1217/sys/src/9/pc/devfloppy.c:612,617 – 1992/1218/sys/src/9/pc/devfloppy.c:616,622 | ||
| 1991/0921 | tsleep(&dp->r, return0, 0, 750); | |
| 1991/0924 | ||
| 1992/1217 | /* clear any pending interrupts */ | |
| 1992/1218 | setvec(Floppyvec, floppyintr); | |
| 1992/1217 | floppysense(); } | |
| 1992/1217/sys/src/9/pc/devfloppy.c:780,787 – 1992/1218/sys/src/9/pc/devfloppy.c:785,794 | ||
| 1991/0924 | floppywait(void) | |
| 1991/0731 | { | |
| 1992/1217 | tsleep(&fl.r, cmddone, 0, 5000); | |
| 1992/1216 |
| |
| 1992/1218 | if(!cmddone(0)){ | |
| 1992/1216 | floppyintr(0); | |
| 1992/1218 | fl.confused = 1; } | |
| 1991/0731 | } /* | |
| 1992/1217/sys/src/9/pc/devfloppy.c:842,849 – 1992/1218/sys/src/9/pc/devfloppy.c:849,857 | ||
| 1992/1217 | fl.ncmd = 1; | |
| 1991/0924 | fl.cmd[0] = 0; outb(Pdor, 0); | |
| 1991/0727 |
| |
| 1992/1218 | delay(10); | |
| 1991/0924 | outb(Pdor, Fintena|Fena); | |
| 1992/1218 | delay(10); | |
| 1991/0727 | spllo(); | |
| 1991/0924 | fl.motor = 0; fl.confused = 0; | |