comparison src/lwwire.c @ 2:2f2cbd2d2561

Theoretically make "C" flag for drive defs work.
author William Astle <lost@l-w.ca>
date Sun, 29 May 2016 10:44:29 -0600
parents bef2801ac83e
children e94940ca17e7
comparison
equal deleted inserted replaced
1:cfc9524cca2c 2:2f2cbd2d2561
71 int lwwire_read2(void *, int, int); 71 int lwwire_read2(void *, int, int);
72 void lwwire_reset(void); 72 void lwwire_reset(void);
73 int lwwire_fetch_sector(int dn, int lsn, void *); 73 int lwwire_fetch_sector(int dn, int lsn, void *);
74 int lwwire_save_sector(int dn, int lsn, void *); 74 int lwwire_save_sector(int dn, int lsn, void *);
75 int nonblock(int); 75 int nonblock(int);
76 int lwwire_drive_readononly(int dn);
76 77
77 void lwwire_proto_read(void); 78 void lwwire_proto_read(void);
78 void lwwire_proto_write(void); 79 void lwwire_proto_write(void);
79 void lwwire_proto_readex(void); 80 void lwwire_proto_readex(void);
80 void lwwire_proto_requestextension(void); 81 void lwwire_proto_requestextension(void);
620 } 621 }
621 } 622 }
622 return drivedata[dn].fp; 623 return drivedata[dn].fp;
623 } 624 }
624 625
626 int lwwire_drive_readonly(int dn)
627 {
628 return drivedata[dn].isconst;
629 }
630
631
625 /* read a sector from a disk image */ 632 /* read a sector from a disk image */
626 int lwwire_fetch_sector(int dn, int lsn, void *buf) 633 int lwwire_fetch_sector(int dn, int lsn, void *buf)
627 { 634 {
628 FILE *fp; 635 FILE *fp;
629 int rc; 636 int rc;
645 int lwwire_save_sector(int dn, int lsn, void *buf) 652 int lwwire_save_sector(int dn, int lsn, void *buf)
646 { 653 {
647 FILE *fp; 654 FILE *fp;
648 int rc; 655 int rc;
649 656
657 if (lwwire_drive_readonly(dn))
658 return LWERR_WRITE;
650 fp = lwwire_fetch_drive_fp(dn); 659 fp = lwwire_fetch_drive_fp(dn);
651 if (!fp) 660 if (!fp)
652 return LWERR_NOTREADY; 661 return LWERR_NOTREADY;
653 if (drivedata[dn].isconst) 662 if (drivedata[dn].isconst)
654 return LWERR_WRITE; 663 return LWERR_WRITE;