home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / misc / edu / DITOdev.lha / DITOdev / Extensions / Source / English / Main.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-12-17  |  1.6 KB  |  80 lines

  1. /*
  2. ** DITO Extension, Main
  3. ** (C) Dirk Holtwick, 1996
  4. */
  5.  
  6. /// HEADER
  7. #include <libraries/mui.h>
  8. #include <clib/alib_protos.h>
  9. #include <clib/exec_protos.h>
  10. #include <clib/dos_protos.h>
  11. #include <clib/muimaster_protos.h>
  12. #include <stdio.h>
  13. #include <stdlib.h>
  14. #include <string.h>
  15.  
  16. #ifdef __MAXON__
  17. #include <pragma/exec_lib.h>
  18. #include <pragma/dos_lib.h>
  19. #include <pragma/muimaster_lib.h>
  20. #include <pragma/dito_lib.h>
  21. #else
  22. #include <pragmas/exec_pragmas.h>
  23. #include <pragmas/dos_pragmas.h>
  24. #include <pragmas/muimaster_pragmas.h>
  25. #include <proto/dito.h>
  26. #endif
  27.  
  28. struct DITO_ExtInfo {
  29.     char  *Language,
  30.             *Author,
  31.             *Version,
  32.             *Date,
  33.             *Description;
  34.     UWORD NumTypes;
  35.     char  **Types;
  36. };
  37.  
  38. #include "defs.h"                // Extension informations
  39. #include "cat.h"                 // Catalogs for English extension
  40.  
  41. #ifdef __MAXON__
  42. #define REG(r) register __ ## r
  43. #define SAVEDS
  44. #define ASM
  45. #else
  46. #define REG(r) register __ ## r
  47. #define SAVEDS __saveds
  48. #define ASM __asm
  49. #endif
  50.  
  51. struct Library *LocaleBase;
  52. struct Library *MUIMasterBase;
  53. struct Library *DitoBase;
  54.  
  55. #include "funcs.h"
  56. ///
  57.  
  58. /// DITO_OpenExtension()
  59. SAVEDS ASM ULONG DITO_OpenExtension(void)
  60. {
  61.     MUIMasterBase = OpenLibrary("muimaster.library",0);
  62.     if(!MUIMasterBase) return(FALSE);
  63.     LocaleBase = OpenLibrary("locale.library",0);
  64.     if(!LocaleBase) return(FALSE);
  65.     DitoBase = OpenLibrary("dito:dito.library",0);
  66.     if(!DitoBase) return(FALSE);
  67.     OPENCAT;
  68.     return(TRUE);
  69. }
  70. ///
  71. /// DITO_CloseExtension()
  72. SAVEDS ASM void DITO_CloseExtension(void)
  73. {
  74.     CLOSECAT;
  75.     CloseLibrary(DitoBase);
  76.     CloseLibrary(LocaleBase);
  77.     CloseLibrary(MUIMasterBase);
  78. }
  79. ///
  80.