home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 466.lha / AztecArp_v1.9 / Source.LZH / tracker.asm < prev    next >
Assembly Source File  |  1990-12-05  |  3KB  |  147 lines

  1. ; Glue routines for arp.library and MANX/AZTEC 'C'
  2. ; Copyright (C) 1987, Scott Ballantyne
  3. ; Use at your own risk, etc., etc.
  4. ; May be freely used.
  5.  
  6.     INCLUDE "exec/execbase.i"
  7.     INCLUDE "libraries/arpbase.i"
  8.     INCLUDE "libraries/dosextens.i"
  9.  
  10. ; Variables used by 'C' to access certain extra arplibrary returns
  11.  
  12.     dseg
  13.     public    _ArpBase
  14.  
  15.     cseg
  16.  
  17. *-------------------------------------------------------------------------
  18.  
  19.     xdef    _ArpAllocMem
  20.  
  21. _ArpAllocMem:
  22.     movem.l 4(sp),d0-d1
  23.     pea    (a6)
  24.     move.l    _ArpBase,a6
  25.     jsr    -390(a6)
  26.     move.l    (sp)+,a6
  27.     bra    Check_Save
  28.  
  29. *-------------------------------------------------------------------------
  30.  
  31.     xdef    _ArpOpen
  32.  
  33. _ArpOpen:
  34.     movem.l 4(sp),d1-d2
  35.     pea    (a6)
  36.     move.l    _ArpBase,a6
  37.     jsr    -396(a6)
  38.     move.l    (sp)+,a6
  39.     bra    Check_Save
  40.  
  41. *-------------------------------------------------------------------------
  42.  
  43.     xdef    _ArpDupLock
  44.  
  45. _ArpDupLock:
  46.     move.l    4(sp),d1
  47.     pea    (a6)
  48.     move.l    _ArpBase,a6
  49.     jsr    -402(a6)
  50.     move.l    (sp)+,a6
  51.     bra    Check_Save
  52.  
  53. *-------------------------------------------------------------------------
  54.  
  55.     xdef    _ArpLock
  56.  
  57. _ArpLock:
  58.     movem.l 4(sp),d1/d2
  59.     pea    (a6)
  60.     move.l    _ArpBase,a6
  61.     jsr    -408(a6)
  62.     move.l    (sp)+,a6
  63.     bra    Check_Save
  64.  
  65. *-------------------------------------------------------------------------
  66.  
  67.     xdef    _ArpAlloc
  68.  
  69. _ArpAlloc:
  70.     move.l    4(sp),d0
  71.     pea    (a6)
  72.     move.l    _ArpBase,a6
  73.     jsr    -384(a6)
  74.     move.l    (sp)+,a6
  75.     bra    Check_Save
  76.  
  77. *-------------------------------------------------------------------------
  78.  
  79.     xdef    _RListAlloc
  80.  
  81. _RListAlloc:
  82.     move.l    4(sp),a0
  83.     move.l    8(sp),d0
  84.     pea    (a6)
  85.     move.l    _ArpBase,a6
  86.     jsr    -414(a6)
  87.     move.l    (sp)+,a6
  88.     bra    Check_Save
  89.  
  90. *-------------------------------------------------------------------------
  91.  
  92.     xdef    _ArpOpenLibrary
  93.  
  94. _ArpOpenLibrary:
  95.     move.l    4(sp),a1
  96.     move.l    8(sp),d0
  97.     pea    (a6)
  98.     move.l    _ArpBase,a6
  99.     jsr    -654(a6)
  100.     move.l    (sp)+,a6
  101.     bra    Check_Save
  102.  
  103. *-------------------------------------------------------------------------
  104.  
  105.     xdef    _ArpAllocFreq
  106.  
  107. _ArpAllocFreq:
  108.     pea    (a6)
  109.     move.l    _ArpBase,a6
  110.     jsr    -660(a6)
  111.     move.l    (sp)+,a6
  112.     bra    Check_Save
  113.  
  114. *-------------------------------------------------------------------------
  115.  
  116.     xdef    _GetTracker
  117.  
  118. _GetTracker:
  119.     pea    (a6)
  120.     move.l    _ArpBase,a6
  121.     jsr    -486(a6)
  122.     move.l    (sp)+,a6
  123.  
  124.     tst.l    d0
  125.     beq    1$        ; No tracker, ERROR!
  126.  
  127.     move.l    4(sp),d1
  128.     move.w    d1,dt_ID(a1)    ; Save ID  (It was LONG)
  129.  
  130. 1$    move.l    a1,d0        ; Put into return register
  131.     bra    Save_Second    ; Also save it...
  132.  
  133. Check_Save:
  134.     tst.l    d0        ; Check for return error...
  135.     beq    Exit_Fail    ; If error, skip setting...
  136.  
  137. Save_Second:
  138.     move.l    (4).w,a0    ; This used to be _SysBase absolutely
  139.                 ; referenced. -olsen
  140.     move.l    ThisTask(a0),a0
  141.     move.l    a1,pr_Result2(a0)
  142.  
  143. Exit_Fail:
  144.     rts
  145.  
  146.     END
  147.