home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Basic / MAXONB32.DMS / in.adf / Includes.lha / BH / BLib / PoolGlue.s < prev    next >
Encoding:
Text File  |  1994-05-09  |  1.2 KB  |  74 lines

  1. **
  2. ** $Id: PoolGlue.s,v 1.2 1994/05/09 13:14:12 alex Rel $
  3. **
  4. ** BASIC Pools glue
  5. **
  6. ** NB: GenAm and SLink are supplied as part of Devpac and SAS/C respectively
  7. **
  8. ** GenAm PoolGlue.s ALINK SYMTAB
  9. ** SLink FROM PoolGlue.o LIB LIB:amiga.lib TO PoolGlue.ld SMALLCODE NODEBUG
  10. ** OToTagList PoolGlue.ld PoolGlue.bas
  11. **
  12. ** (c) Copyright 1994 HiSoft
  13. **
  14.     SECTION    CODE,CODE
  15.     XREF    _AsmAllocPooled
  16.     XREF    _AsmCreatePool
  17.     XREF    _AsmDeletePool
  18.     XREF    _AsmFreePooled
  19.  
  20. LibAllocPooled:
  21.     move.l    a6,a4
  22.     movem.l    4(a7),d0/a0/a5-a6
  23.     bsr    _AsmAllocPooled
  24.     move.l    d0,(a5)
  25.     move.l    a4,a6
  26.     rts
  27.  
  28. LibCreatePool:
  29.     move.l    a6,a4
  30.     movem.l    4(a7),d0-d2/a5-a6
  31.     bsr    _AsmCreatePool
  32.     move.l    d0,(a5)
  33.     move.l    a4,a6
  34.     rts
  35.  
  36. LibDeletePool:
  37.     move.l    a6,a4
  38.     movem.l    4(a7),a0/a6
  39.     bsr    _AsmDeletePool
  40.     move.l    a4,a6
  41.     rts
  42.  
  43. LibFreePooled:
  44.     move.l    a6,a4
  45.     movem.l    4(a7),d0/a0-a1/a6
  46.     bsr    _AsmFreePooled
  47.     move.l    a4,a6
  48.     rts
  49.  
  50. LibAllocVecPooled:
  51.     move.l    a6,a4
  52.     movem.l    4(a7),d0/a0/a5-a6
  53.     addq.l    #4,d0
  54.     bsr    _AsmAllocPooled
  55.     move.l    d0,a0
  56.     tst.l    d0
  57.     beq.s    1$
  58.     move.l    4(a7),(a0)+
  59. 1$    move.l    a0,(a5)
  60.     move.l    a4,a6
  61.     rts
  62.  
  63. LibFreeVecPooled:
  64.     move.l    a6,a4
  65.     movem.l    4(a7),a0-a1/a6
  66.     move.l    a1,d0
  67.     beq.s    1$
  68.     move.l    -(a1),d0
  69.     bsr    _AsmFreePooled
  70. 1$    move.l    a4,a6
  71.     rts
  72.  
  73.     END
  74.