home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / disks / disk393.lzh / LibTool / CSimple / SimpleCApp.c < prev   
C/C++ Source or Header  |  1990-10-28  |  2KB  |  91 lines

  1. /****************************************************************************
  2.   This is an example application to test the C "simple.library". Make the
  3.   glue code with LibTool (-c option).
  4.  
  5. Manx 3.6
  6.  
  7. cc +p SimpleCApp.c
  8. LibTool -cho glue.asm SimpleC.fd
  9. as -cd glue.asm
  10. ln -o ram:TestProgram SimpleCApp.o glue.o -lcl32
  11.  
  12. Lattice 5.0
  13.  
  14. lc -b0 SimpleCApp.c
  15. LibTool -cho glue.asm SimpleC.fd
  16. assemble glue.asm
  17. blink lib:c.o SimpleCApp.o glue.o LIB lib:lcnb.lib TO ram:TestProgram
  18.  
  19. ****************************************************************************/
  20.  
  21. #ifdef AZTEC_C
  22. #define NARGS
  23. #define NO_PRAGMAS
  24. #endif
  25.  
  26. #ifdef AZTEC_C
  27. #include "functions.h"
  28. #else
  29. #include "proto/all.h"
  30. #endif
  31.  
  32. #include "exec/types.h"
  33.  
  34. /* This is the INCLUDE file made by LibTool */
  35. #include "SimpleC.h"
  36.  
  37. ULONG  argcount;  /* Saves argc from main(). argcount==0, then run from WB. */
  38.  
  39. #ifdef NARGS
  40. VOID exit_program();
  41. #else
  42. VOID exit_program( char, ULONG );
  43. long main( long, char ** );
  44. #endif
  45.  
  46.  
  47. VOID exit_program( error_words, error_code )    /* All exits through here. */
  48. char  error_words;
  49. ULONG error_code;
  50. {
  51.     if( argcount && error_words ) puts( error_words );
  52.     CloseSimpleBase();    /* This is always safe to call */
  53.     exit( error_code );
  54. }
  55.  
  56.  
  57. /************************ MAIN ROUTINE *****************************/
  58.  
  59. VOID main(argc, argv)
  60. LONG argc;
  61. char **argv;
  62. {
  63. register ULONG x, y, result;
  64.  
  65.     argcount = argc;
  66.  
  67.     /* open simple.library */
  68.     if (! (OpenSimpleBase()) )
  69.         exit_program("Can't open simple library.\n", 10L);
  70.  
  71.     /* add 2 numbers and print result */
  72.     x = 4;
  73.     y = 6;
  74.     result = Add2Numbers(x, y);
  75.     printf("%d + %d = %d\n", x, y, result);
  76.  
  77.     /* sub 2 numbers and print result */
  78.     x = 10;
  79.     y = 4;
  80.     result = Sub2Numbers(x, y);
  81.     printf("%d - %d = %d\n", x, y, result);
  82.  
  83.     /* multiply 2 numbers and print result */
  84.     x = 8;
  85.     y = 8;
  86.     result = Mult2Numbers(x, y);
  87.     printf("%d * %d = %d\n", x, y, result);
  88.  
  89.     exit_program(0L,0L);
  90. }
  91.