home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / prog / source / except.lha / Makefile next >
Makefile  |  1992-08-12  |  3KB  |  76 lines

  1. #
  2. # Simple makefile & doc for NullHandler & TestNull
  3. #
  4. # $VER: Makefile 37.1 (12.8.92) -- Makefile for NullHandler & TestNull
  5. #
  6. # Exception handler example
  7. #
  8. # Copyright (C) 1992 Compos Mentis Software Systems -- Jesper Kehlet
  9. #
  10. # May be freely redistributed and reused as long as archive is kept in it's
  11. # entirety -- that includes:
  12. #
  13. # Makefile      - This is what you're reading            - 2672 bytes
  14. # NullHandler   - The division by zero exception handler -  216 bytes
  15. # NullHandler.o - The exception handler object file      -  232 bytes
  16. # NullHandler.a - -   -         -       source file      - 3374 bytes
  17. # TestNull      - A small TRAP #5 test program           -   44 bytes
  18. # TestNull.o    - TestNull object file                   -   52 bytes
  19. # TestNull.a    - -        source -                      -  856 bytes
  20. #
  21. # NullHandler is an example of how easy it is to set up an exception
  22. # handler that can be removed without doing an immense amount of work with
  23. # setting up ports etc.
  24. #
  25. # It is, of course, not bullet-proof, but if you choose an IDENT string
  26. # made up from something like your cat or something -- sure Dave would
  27. # choose IGGY -- it should be fairly unique to any other exception handler,
  28. # that may be installed after this one.
  29. #
  30. # It does not check whether or not we get the memory we want, but since
  31. # it's only 58 bytes, it's not a healthy system if we don't get it, so who
  32. # cares then?
  33. #
  34. # When this handler is installed, it saves the address of the original
  35. # code, so everything is restored properly when run the second time.
  36. #
  37. # When run a second time, it removes itself (if possible), and returns
  38. # WARN to tell you it's no longer there.
  39. #
  40. # So an installation script would be:
  41. #
  42. # NullHandler
  43. # If WARN
  44. #   NullHandler
  45. # EndIf
  46. #
  47. # And you can be fairly sure it's installed...
  48. #
  49. # So, if you decide to install some other exception handlers for the same
  50. # vector after this one, you must remove those before this one can find
  51. # itself.  This ONLY looks at the currently installed one.  That's a
  52. # drawback, but then again, it's small and you don't really install that
  53. # many exception handlers, do you?
  54. #
  55. # This was done with the SAS 5.10b assembler
  56. #
  57. # If you want to port to a68k or something:
  58. # -----------------------------------------
  59. # The assembler flag -m2 suppresses the 68020+ opcode warnings
  60. # -   -         -    -i specifies a path to your include files.
  61. #
  62. # The lvo/ directory I use is for my _LVO-files made by GetLVO.
  63. #
  64.  
  65. AS    = Asm
  66. AFLAGS    = -m2 -iAINCLUDE:
  67. LN    = BLink
  68. ASRC    = NullHandler.a TestNull.a
  69.  
  70. all:    NullHandler.o TestNull.o
  71.     $(LN) NullHandler.o
  72.     $(LN) TestNull.o
  73.  
  74. .a.o:    NullHandler.a TestNull.a
  75.     $(AS) $(AFLAGS) $*
  76.