home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Assembler / wst!oma3.lha / OMA / Include / exec / ables.i next >
Encoding:
Text File  |  1994-12-23  |  1.4 KB  |  99 lines

  1.     IFND    EXEC_ABLES_I
  2. EXEC_ABLES_I    EQU    1
  3. *    $Filename: exec/ables.i $
  4. *    $Release: 2.04 Includes, V37.4 $
  5. *    $Revision: 36.6 $
  6. *    $Date: 90/05/10 $
  7. *    Task switch and interrupt control macros
  8. *    (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  9. *        All Rights Reserved
  10.     IFND    EXEC_TYPES_I
  11.     INCLUDE    "exec/types.i"
  12.     ENDC
  13.     IFND    EXEC_EXECBASE_I
  14.     INCLUDE    "exec/execbase.i"
  15.     ENDC
  16. INT_ABLES    MACRO
  17.     XREF    _intena
  18.     ENDM
  19. DISABLE    MACRO
  20.     IFC    '\1',''
  21.     MOVE.W    #$04000,_intena
  22.     ADDQ.B    #1,IDNestCnt(A6)
  23.     MEXIT
  24.     ENDC
  25.     IFC    '\2','NOFETCH'
  26.     MOVE.W    #$04000,_intena
  27.     ADDQ.B    #1,IDNestCnt(\1)
  28.     MEXIT
  29.     ENDC
  30.     IFNC    '\1',''
  31.     MOVE.L    4,\1
  32.     MOVE.W    #$04000,_intena
  33.     ADDQ.B    #1,IDNestCnt(\1)
  34.     MEXIT
  35.     ENDC
  36.     ENDM
  37. ENABLE    MACRO
  38.     IFC    '\1',''
  39.     SUBQ.B    #1,IDNestCnt(A6)
  40.     BGE.S    ENABLE\@
  41.     MOVE.W    #$0C000,_intena
  42. ENABLE\@    
  43.     MEXIT
  44.     ENDC
  45.     IFC    '\2','NOFETCH'
  46.     SUBQ.B    #1,IDNestCnt(\1)
  47.     BGE.S    ENABLE\@
  48.     MOVE.W    #$0C000,_intena
  49. ENABLE\@    
  50.     MEXIT
  51.     ENDC
  52.     IFNC    '\1',''
  53.     MOVE.L    4,\1
  54.     SUBQ.B    #1,IDNestCnt(\1)
  55.     BGE.S    ENABLE\@
  56.     MOVE.W    #$0C000,_intena
  57. ENABLE\@    
  58.     MEXIT
  59.     ENDC
  60.     ENDM
  61. TASK_ABLES    MACRO
  62.     XREF    _LVOPermit
  63.     ENDM
  64. FORBID    MACRO
  65.     IFC    '\1',''
  66.     ADDQ.B    #1,TDNestCnt(A6)
  67.     MEXIT
  68.     ENDC
  69.     IFC    '\2','NOFETCH'
  70.     ADDQ.B    #1,TDNestCnt(\1)
  71.     MEXIT
  72.     ENDC
  73.     IFNC    '\1',''
  74.     MOVE.L    4,\1
  75.     ADDQ.B    #1,TDNestCnt(\1)
  76.     MEXIT
  77.     ENDC
  78.     ENDM
  79. PERMIT    MACRO
  80.     IFC    '\1',''
  81.     JSR    _LVOPermit(A6)
  82.     MEXIT
  83.     ENDC
  84.     IFC    '\2','NOFETCH'
  85.     EXG.L    A6,\1
  86.     JSR    _LVOPermit(A6)
  87.     EXG.L    A6,\1
  88.     MEXIT
  89.     ENDC
  90.     IFNC    '\1',''
  91.     MOVE.L    A6,-(SP)
  92.     MOVE.L    4,A6
  93.     JSR    _LVOPermit(A6)
  94.     MOVE.L    (SP)+,A6
  95.     MEXIT
  96.     ENDC
  97.     ENDM
  98.     ENDC
  99.