Lines Matching refs:disc
41 Sfdisc_t disc; member
109 static ssize_t dos_read(Sfio_t *iop, void *buff, size_t size, Sfdisc_t* disc) in dos_read() argument
111 static ssize_t dos_read(iop, buff, size, disc) in dos_read()
115 Sfdisc_t* disc;
118 register Dosdisc_t *dp = (Dosdisc_t*)disc;
129 if((n = sfrd(iop,buff,size,disc)) <= 0)
276 static Sfoff_t dos_seek(Sfio_t *iop, Sfoff_t offset, register int whence, Sfdisc_t* disc) in dos_seek() argument
278 static Sfoff_t dos_seek(iop, offset, whence, disc) in dos_seek()
282 Sfdisc_t* disc;
285 register Dosdisc_t *dp = (Dosdisc_t*)disc;
293 offset = sfsk(iop, (Sfoff_t)0,SEEK_CUR,disc);
311 return(sfsk(iop,offset,SEEK_END,disc));
323 sfsk(iop,mp->physical,SEEK_SET,disc);
326 if((*disc->readf)(iop,iop->data,size,disc)<0)
335 n=(*disc->readf)(iop,iop->data,size,disc);
356 sfsk(iop, physical ,SEEK_SET,disc);
367 static int dos_except(Sfio_t *iop, int type, void *arg, Sfdisc_t *disc) in dos_except() argument
369 static int dos_except(iop, type, arg, disc) in dos_except()
373 Sfdisc_t *disc;
376 register Dosdisc_t *dp = (Dosdisc_t*)disc;
383 free((void*)disc);
405 dos->disc.readf = dos_read;
406 dos->disc.writef = NIL(Sfwrite_f);
407 dos->disc.seekf = dos_seek;
408 dos->disc.exceptf = dos_except;