home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / dirs / setnoclick_392.lzh / SetNoClick / setnoclick.c < prev   
C/C++ Source or Header  |  1990-10-27  |  1KB  |  46 lines

  1. char *vers="\0$VER: setnoclick 1.0 -- Marc Boucher (Internet: marc@CAM.ORG / BIX: mboucher) Saturday 07-Jul-90 13:36:45";
  2.  
  3. #include <exec/types.h>
  4. #include <devices/trackdisk.h>
  5.  
  6. #include <functions.h>
  7. #include <stdio.h>
  8.  
  9. main(int ac, char **av)
  10. {
  11.     struct IOExtTD *td;
  12.     struct MsgPort *po;
  13.     struct TDU_PublicUnit *tpu;
  14.     long unit=0;
  15.  
  16.     switch(ac) {
  17.         case 1: break;
  18.         case 2: unit=atol(av[1]); break;
  19.         default:
  20.             fprintf(stderr, "Usage: %s [unitnum]\n", av[0]);
  21.             exit(1);
  22.             break;
  23.     }
  24.  
  25.     po=CreatePort(NULL,0);
  26.     if(!po) exit(1);
  27.  
  28.     td=(struct IOExtTD *)CreateExtIO(po, sizeof(struct IOExtTD));
  29.     if(!td) {
  30.         DeletePort(po);
  31.         exit(1);
  32.     }
  33.     if(OpenDevice("trackdisk.device", unit, (struct IORequest *)td, 0)) {
  34.         fprintf(stderr, "%s: trackdisk.device unit %d OpenDevice() failed\n", av[0], unit);
  35.         DeleteExtIO((struct IORequest *)td);
  36.         DeletePort(po);
  37.         exit(1);
  38.     }
  39.     tpu=(struct TDU_PublicUnit *)td->iotd_Req.io_Unit;
  40.     tpu->tdu_PubFlags|=TDPF_NOCLICK;
  41.     CloseDevice((struct IORequest *)td);
  42.     DeleteExtIO((struct IORequest *)td);
  43.     DeletePort(po);
  44.     return(0);
  45. }
  46.