home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 200-299 / ff246.lzh / Ty / projectsdir / segha.c < prev    next >
C/C++ Source or Header  |  1989-09-14  |  2KB  |  52 lines

  1. /*************************************************************************
  2.  ***                                segha.c              (JJB TEMPLAR) ***
  3.  *** Date begun: 18/8/89.                                              ***
  4.  *** Last modified: 18/8/89.                                           ***
  5.  *************************************************************************/
  6. /*** Something cunning, or a mass of GURUs?                            ***
  7.  *************************************************************************/
  8.  
  9. #include <exec/types.h>
  10. #include <libraries/dos.h>
  11. #include <libraries/dosextens.h>
  12. #include <workbench/startup.h>
  13.  
  14. #include <proto/exec.h>
  15. #include <proto/dos.h>
  16.  
  17. #include <string.h>
  18.  
  19. extern struct WBStartup *WBenchMsg;
  20. extern struct DOSBase   *DOSBase;
  21.  
  22. extern BPTR far   myseg;           /* What to return for mLoadSeg */
  23. extern __fptr far realLoadSeg;     /* Thank you for __fptr Lattice! */
  24. extern __fptr far realUnLoadSeg;
  25.  
  26. extern void mLoadSeg();
  27. extern void mUnLoadSeg();
  28.  
  29. void    onseg() /*=======================================================*/
  30. {
  31.     return;
  32.     if (!WBenchMsg) return;  /* Do nothing if not from WB */
  33.  
  34.     myseg = WBenchMsg->sm_Segment;
  35.  
  36.     Disable();
  37.     realLoadSeg = SetFunction(DOSBase,-0x0096,mLoadSeg);
  38.     realUnLoadSeg = SetFunction(DOSBase,-0x009c,mUnLoadSeg);
  39.     Enable();
  40. }
  41.  
  42. void    offseg() /*======================================================*/
  43. {
  44.     return;
  45.     if (!WBenchMsg) return;     /* Nothing from WB */
  46.  
  47.     Disable();
  48.     SetFunction(DOSBase,-0x009c,realUnLoadSeg);
  49.     SetFunction(DOSBase,-0x0096,realLoadSeg);
  50.     Enable();
  51. }
  52.