home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / comm / term23_2.lha / Source_Code / XPRAscii / ascii_lib.a next >
Text File  |  1992-05-09  |  2KB  |  134 lines

  1.     SECTION    LibCode,CODE
  2.  
  3.     XDEF    _SysBase,_DOSBase,_IntuitionBase,_GfxBase,_LibBase
  4.  
  5. numOfFuncs    equ      10
  6. negsize        equ    numOfFuncs*6
  7.  
  8.     XREF    _LVOAddLibrary,_LVOOldOpenLibrary,_LVOCloseLibrary
  9.     XREF    _LVOAllocMem,_LVOFreeMem,_LVORemove
  10.  
  11. VERSION        equ    2
  12. REVISION    equ    1
  13.  
  14. return0:
  15.     moveq    #0,d0
  16.     rts
  17.  
  18. RomTag:
  19.     dc.w    $4AFC
  20.     dc.l    RomTag,endRom
  21.     dc.b    0,VERSION,9,0
  22.     dc.l    Lib_Name,Lib_Id,libstartup
  23. endRom
  24.  
  25. libstartup:
  26.     move.l    a3,-(sp)
  27.     lea    SegList,a3
  28.     move.l    a0,(a3)+
  29.     move.l    a6,(a3)+
  30.     lea    12(a3),a1
  31.     jsr    _LVOOldOpenLibrary(a6)
  32.     move.l    d0,(a3)+
  33.     lea    20(a3),a1
  34.     jsr    _LVOOldOpenLibrary(a6)
  35.     move.l    d0,(a3)+
  36.     lea    34(a3),a1
  37.     jsr    _LVOOldOpenLibrary(a6)
  38.     move.l    d0,(a3)
  39.     lea    -50(a3),a1
  40.     movea.l    a1,a3
  41.     jsr    _LVOAddLibrary(a6)
  42. tru    move.l    a3,d0
  43.     movea.l    (sp)+,a3
  44.     rts
  45.  
  46. myOpen:
  47.     addq.w    #1,32(a6)
  48.     Bclr.b    #3,14(a6)
  49.     move.l    a6,d0
  50.     rts
  51.  
  52. abe    lea    _SysBase,a3
  53.     movea.l    (a3)+,a6
  54.     movea.l    (a3)+,a1
  55.     jsr    _LVOCloseLibrary(a6)
  56.     movea.l    (a3)+,a1
  57.     jsr    _LVOCloseLibrary(a6)
  58.     movea.l    (a3),a1
  59.     jsr    _LVOCloseLibrary(a6)
  60.  
  61.     suba.w    #50,a3
  62.     movea.l    a3,a1
  63.     jmp    _LVORemove(a6)
  64. myClose:
  65.     subq.w    #1,32(a6)
  66.     bne.s    zro
  67.     Bset.b    #3,14(a6)
  68.     bne.s    exp
  69. zro    moveq    #0,d0
  70.     rts
  71.  
  72. myExpunge:
  73.     Bset.b    #3,14(a6)
  74.     move.w    32(a6),d1
  75.     bne.s    zro
  76. exp    move.l    a3,-(sp)
  77.     bsr.s    abe
  78.     move.l    34(a3),d0
  79.     movea.l    a3,a6
  80.     movea.l    (sp)+,a3
  81.     rts
  82.  
  83.     SECTION    LibData,DATA
  84.  
  85. LibFuncTable:
  86.     XREF    @XProtocolUserMon
  87.     dc.w    $4EF9
  88.     dc.l    @XProtocolUserMon
  89.     XREF    @XProtocolHostMon
  90.     dc.w    $4EF9
  91.     dc.l    @XProtocolHostMon
  92.     XREF    @XProtocolReceive
  93.     dc.w    $4EF9
  94.     dc.l    @XProtocolReceive
  95.     XREF    @XProtocolSend
  96.     dc.w    $4EF9
  97.     dc.l    @XProtocolSend
  98.     XREF    @XProtocolSetup
  99.     dc.w    $4EF9
  100.     dc.l    @XProtocolSetup
  101.     XREF    @XProtocolCleanup
  102.     dc.w    $4EF9
  103.     dc.l    @XProtocolCleanup
  104.     dc.w    $4EF9
  105.     dc.l    return0
  106.     dc.w    $4EF9
  107.     dc.l    myExpunge
  108.     dc.w    $4EF9
  109.     dc.l    myClose
  110.     dc.w    $4EF9
  111.     dc.l    myOpen
  112. _LibBase:
  113.     dc.l    0,0
  114.     dc.b    9,0
  115.     dc.l    Lib_Name
  116.     dc.b    6,0
  117.     dc.w    negsize,54,VERSION,REVISION
  118.     dc.l    Lib_Id,0
  119.     dc.w    0
  120. SegList    dc.l    0
  121. _SysBase    dc.l    0
  122. _DOSBase    dc.l    0
  123. _IntuitionBase    dc.l    0
  124. _GfxBase    dc.l    0
  125.  
  126. DOSName        dc.b    'dos.library',0
  127. IntuitionName    dc.b    'intuition.library',0
  128. GfxName        dc.b    'graphics.library',0
  129.  
  130. Lib_Name    dc.b    'xprascii.library',0
  131. Lib_Id        dc.b    'ASCII 2.1 (09-May-92)',13,10,0
  132.  
  133.     END
  134.