home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 300-399 / ff353.lzh / AztecArp / aztecglue.asm < prev    next >
Assembly Source File  |  1990-06-02  |  10KB  |  693 lines

  1. ; General arp.library glue code, built using the MapFD program
  2. ; supplied with Aztec 5.0 and some small hacks to get Printf and its
  3. ; cousins work right though this doesn't imply any guarantee.
  4. ;
  5. ; This code could - as usual - be a lot shorter since I've put all
  6. ; glue routines into one single file instead of creating small single
  7. ; modules to be linked into a big linker lib. I could easily say
  8. ; that this was done for debugging purposes, but the truth is: I'm
  9. ; too lazy. Change anything you want, might as well work with Lattice.
  10. ;
  11. ; Note:    1) Tracked functions are commented out.
  12. ;    2) To enable words for Toupper define INT16 (longs are default)
  13. ;
  14. ; 10-Mar-90:    Olsen did the recreation (yes he did).
  15.  
  16.     xref    _ArpBase
  17.  
  18.     section    text,code    ; Make the asm happy
  19.  
  20. ;    xdef    _ArpAllocMem
  21. ;_ArpAllocMem:
  22. ;    move.l    a6,-(sp)
  23. ;    move.l    _ArpBase,a6
  24. ;    movem.l    8(sp),d0/d1
  25. ;    jsr    -390(a6)
  26. ;    move.l    (sp)+,a6
  27. ;    rts
  28.  
  29. ;    xdef    _ArpAllocFreq
  30. ;_ArpAllocFreq:
  31. ;    move.l    a6,-(sp)
  32. ;    move.l    _ArpBase,a6
  33. ;    jsr    -660(a6)
  34. ;    move.l    (sp)+,a6
  35. ;    rts
  36.  
  37. ;    xdef    _ArpAlloc
  38. ;_ArpAlloc:
  39. ;    move.l    a6,-(sp)
  40. ;    move.l    _ArpBase,a6
  41. ;    move.l    8(sp),d0
  42. ;    jsr    -384(a6)
  43. ;    move.l    (sp)+,a6
  44. ;    rts
  45.  
  46. ;    xdef    _ArpDupLock
  47. ;_ArpDupLock:
  48. ;    move.l    a6,-(sp)
  49. ;    move.l    _ArpBase,a6
  50. ;    move.l    8(sp),d1
  51. ;    jsr    02(a6)
  52. ;    move.l    (sp)+,a6
  53. ;    rts
  54.  
  55. ;    xdef    _ArpLock
  56. ;_ArpLock:
  57. ;    movem.l    a6/d2,-(sp)
  58. ;    move.l    _ArpBase,a6
  59. ;    movem.l    12(sp),d1/d2
  60. ;    jsr    08(a6)
  61. ;    movem.l    (sp)+,a6/d2
  62. ;    rts
  63.  
  64. ;    xdef    _ArpOpen
  65. ;_ArpOpen:
  66. ;    movem.l    a6/d2,-(sp)
  67. ;    move.l    _ArpBase,a6
  68. ;    movem.l    12(sp),d1/d2
  69. ;    jsr    -396(a6)
  70. ;    movem.l    (sp)+,a6/d2
  71. ;    rts
  72.  
  73. ;    xdef    _ArpOpenLibrary
  74. ;_ArpOpenLibrary:
  75. ;    move.l    a6,-(sp)
  76. ;    move.l    _ArpBase,a6
  77. ;    move.l    8(sp),a1
  78. ;    move.l    12(sp),d0
  79. ;    jsr    -654(a6)
  80. ;    move.l    (sp)+,a6
  81. ;    rts
  82.  
  83. ;    xdef    _GetTracker
  84. ;_GetTracker:
  85. ;    move.l    a6,-(sp)
  86. ;    move.l    _ArpBase,a6
  87. ;    jsr    86(a6)
  88. ;    move.l    (sp)+,a6
  89. ;    rts
  90.  
  91. ;    xdef    _RListAlloc
  92. ;_RListAlloc:
  93. ;    move.l    a6,-(sp)
  94. ;    move.l    _ArpBase,a6
  95. ;    move.l    8(sp),a0
  96. ;    move.l    12(sp),d0
  97. ;    jsr    14(a6)
  98. ;    move.l    (sp)+,a6
  99. ;    rts
  100.  
  101.     xdef    _AddDADevs
  102. _AddDADevs:
  103.     move.l    a6,-(sp)
  104.     move.l    _ArpBase,a6
  105.     move.l    8(sp),a0
  106.     move.l    12(sp),d0
  107.     jsr    -516(a6)
  108.     move.l    (sp)+,a6
  109.     rts
  110.  
  111.     xdef    _AddDANode
  112. _AddDANode:
  113.     move.l    a6,-(sp)
  114.     move.l    _ArpBase,a6
  115.     movem.l    8(sp),a0/a1
  116.     movem.l    16(sp),d0/d1
  117.     jsr    -510(a6)
  118.     move.l    (sp)+,a6
  119.     rts
  120.  
  121.     xdef    _AddResidentPrg
  122. _AddResidentPrg:
  123.     move.l    a6,-(sp)
  124.     move.l    _ArpBase,a6
  125.     movem.l    8(sp),d1/a0
  126.     jsr    -582(a6)
  127.     move.l    (sp)+,a6
  128.     rts
  129.  
  130.     xdef    _ArpExit
  131. _ArpExit:
  132.     movem.l    a6/d2,-(sp)
  133.     move.l    _ArpBase,a6
  134.     movem.l    12(sp),d0/d2
  135.     jsr    -378(a6)
  136.     movem.l    (sp)+,a6/d2
  137.     rts
  138.  
  139.     xdef    _Assign
  140. _Assign:
  141.     move.l    a6,-(sp)
  142.     move.l    _ArpBase,a6
  143.     movem.l    8(sp),a0/a1
  144.     jsr    -336(a6)
  145.     move.l    (sp)+,a6
  146.     rts
  147.  
  148.     xdef    _ASyncRun
  149. _ASyncRun:
  150.     movem.l    a6/a2,-(sp)
  151.     move.l    _ArpBase,a6
  152.     movem.l    12(sp),a0/a1/a2
  153.     jsr    -546(a6)
  154.     movem.l    (sp)+,a6/a2
  155.     rts
  156.  
  157.     xdef    _Atol
  158. _Atol:
  159.     move.l    a6,-(sp)
  160.     move.l    _ArpBase,a6
  161.     move.l    8(sp),a0
  162.     jsr    -258(a6)
  163.     move.l    (sp)+,a6
  164.     rts
  165.  
  166.     xdef    _BaseName
  167. _BaseName:
  168.     move.l    a6,-(sp)
  169.     move.l    _ArpBase,a6
  170.     move.l    8(sp),a0
  171.     jsr    -630(a6)
  172.     move.l    (sp)+,a6
  173.     rts
  174.  
  175.     xdef    _BtoCStr
  176. _BtoCStr:
  177.     move.l    a6,-(sp)
  178.     move.l    _ArpBase,a6
  179.     move.l    8(sp),a0
  180.     movem.l    12(sp),d0/d1
  181.     jsr    -354(a6)
  182.     move.l    (sp)+,a6
  183.     rts
  184.  
  185.     xdef    _CheckAbort
  186. _CheckAbort:
  187.     move.l    a6,-(sp)
  188.     move.l    _ArpBase,a6
  189.     move.l    8(sp),a1
  190.     jsr    -270(a6)
  191.     move.l    (sp)+,a6
  192.     rts
  193.  
  194.     xdef    _CheckBreak
  195. _CheckBreak:
  196.     move.l    a6,-(sp)
  197.     move.l    _ArpBase,a6
  198.     movem.l    8(sp),d1/a1
  199.     jsr    -276(a6)
  200.     move.l    (sp)+,a6
  201.     rts
  202.  
  203.     xdef    _CheckSumPrg
  204. _CheckSumPrg:
  205.     move.l    a6,-(sp)
  206.     move.l    _ArpBase,a6
  207.     move.l    8(sp),d0
  208.     jsr    -618(a6)
  209.     move.l    (sp)+,a6
  210.     rts
  211.  
  212.     xdef    _CloseWindowSafely
  213. _CloseWindowSafely:
  214.     move.l    a6,-(sp)
  215.     move.l    _ArpBase,a6
  216.     movem.l    8(sp),a0/a1
  217.     jsr    -300(a6)
  218.     move.l    (sp)+,a6
  219.     rts
  220.  
  221.     xdef    _CompareLock
  222. _CompareLock:
  223.     move.l    a6,-(sp)
  224.     move.l    _ArpBase,a6
  225.     movem.l    8(sp),d0/d1
  226.     jsr    56(a6)
  227.     move.l    (sp)+,a6
  228.     rts
  229.  
  230.     xdef    _CreatePort
  231. _CreatePort:
  232.     move.l    a6,-(sp)
  233.     move.l    _ArpBase,a6
  234.     move.l    8(sp),a0
  235.     move.l    12(sp),d0
  236.     jsr    -306(a6)
  237.     move.l    (sp)+,a6
  238.     rts
  239.  
  240.     xdef    _CreateTaskResList
  241. _CreateTaskResList:
  242.     move.l    a6,-(sp)
  243.     move.l    _ArpBase,a6
  244.     jsr    68(a6)
  245.     move.l    (sp)+,a6
  246.     rts
  247.  
  248.     xdef    _CtoBStr
  249. _CtoBStr:
  250.     move.l    a6,-(sp)
  251.     move.l    _ArpBase,a6
  252.     move.l    8(sp),a0
  253.     movem.l    12(sp),d0/d1
  254.     jsr    -360(a6)
  255.     move.l    (sp)+,a6
  256.     rts
  257.  
  258.     xdef    _DeletePort
  259. _DeletePort:
  260.     move.l    a6,-(sp)
  261.     move.l    _ArpBase,a6
  262.     move.l    8(sp),a1
  263.     jsr    -312(a6)
  264.     move.l    (sp)+,a6
  265.     rts
  266.  
  267.     xdef    _DosAllocMem
  268. _DosAllocMem:
  269.     move.l    a6,-(sp)
  270.     move.l    _ArpBase,a6
  271.     move.l    8(sp),d0
  272.     jsr    -342(a6)
  273.     move.l    (sp)+,a6
  274.     rts
  275.  
  276.     xdef    _DosFreeMem
  277. _DosFreeMem:
  278.     move.l    a6,-(sp)
  279.     move.l    _ArpBase,a6
  280.     move.l    8(sp),a1
  281.     jsr    -348(a6)
  282.     move.l    (sp)+,a6
  283.     rts
  284.  
  285.     xdef    _EscapeString
  286. _EscapeString:
  287.     move.l    a6,-(sp)
  288.     move.l    _ArpBase,a6
  289.     move.l    8(sp),a0
  290.     jsr    -264(a6)
  291.     move.l    (sp)+,a6
  292.     rts
  293.  
  294.     xdef    _FileRequest
  295. _FileRequest:
  296.     move.l    a6,-(sp)
  297.     move.l    _ArpBase,a6
  298.     move.l    8(sp),a0
  299.     jsr    -294(a6)
  300.     move.l    (sp)+,a6
  301.     rts
  302.  
  303.     xdef    _FindCLI
  304. _FindCLI:
  305.     move.l    a6,-(sp)
  306.     move.l    _ArpBase,a6
  307.     move.l    8(sp),d0
  308.     jsr    20(a6)
  309.     move.l    (sp)+,a6
  310.     rts
  311.  
  312.     xdef    _FindFirst
  313. _FindFirst:
  314.     move.l    a6,-(sp)
  315.     move.l    _ArpBase,a6
  316.     movem.l    8(sp),d0/a0
  317.     jsr    38(a6)
  318.     move.l    (sp)+,a6
  319.     rts
  320.  
  321.     xdef    _FindNext
  322. _FindNext:
  323.     move.l    a6,-(sp)
  324.     move.l    _ArpBase,a6
  325.     move.l    8(sp),a0
  326.     jsr    44(a6)
  327.     move.l    (sp)+,a6
  328.     rts
  329.  
  330.     xdef    _FindTaskResList
  331. _FindTaskResList:
  332.     move.l    a6,-(sp)
  333.     move.l    _ArpBase,a6
  334.     jsr    62(a6)
  335.     move.l    (sp)+,a6
  336.     rts
  337.  
  338.     xdef    _FPrintf
  339. _FPrintf:
  340.     move.l    a6,-(sp)
  341.     move.l    _ArpBase,a6
  342.     movem.l    8(sp),d0/a0
  343.     lea.l    16(sp),a1
  344.     jsr    -234(a6)
  345.     move.l    (sp)+,a6
  346.     rts
  347.  
  348.     xdef    _FreeAccess
  349. _FreeAccess:
  350.     move.l    a6,-(sp)
  351.     move.l    _ArpBase,a6
  352.     move.l    8(sp),a1
  353.     jsr    98(a6)
  354.     move.l    (sp)+,a6
  355.     rts
  356.  
  357.     xdef    _FreeAnchorChain
  358. _FreeAnchorChain:
  359.     move.l    a6,-(sp)
  360.     move.l    _ArpBase,a6
  361.     move.l    8(sp),a0
  362.     jsr    50(a6)
  363.     move.l    (sp)+,a6
  364.     rts
  365.  
  366.     xdef    _FreeDAList
  367. _FreeDAList:
  368.     move.l    a6,-(sp)
  369.     move.l    _ArpBase,a6
  370.     move.l    8(sp),a1
  371.     jsr    -504(a6)
  372.     move.l    (sp)+,a6
  373.     rts
  374.  
  375.     xdef    _FreeResList
  376. _FreeResList:
  377.     move.l    a6,-(sp)
  378.     move.l    _ArpBase,a6
  379.     move.l    8(sp),a1
  380.     jsr    74(a6)
  381.     move.l    (sp)+,a6
  382.     rts
  383.  
  384.     xdef    _FreeTaskResList
  385. _FreeTaskResList:
  386.     move.l    a6,-(sp)
  387.     move.l    _ArpBase,a6
  388.     jsr    -372(a6)
  389.     move.l    (sp)+,a6
  390.     rts
  391.  
  392.     xdef    _FreeTrackedItem
  393. _FreeTrackedItem:
  394.     move.l    a6,-(sp)
  395.     move.l    _ArpBase,a6
  396.     move.l    8(sp),a1
  397.     jsr    80(a6)
  398.     move.l    (sp)+,a6
  399.     rts
  400.  
  401.     xdef    _GADS
  402. _GADS:
  403.     movem.l    a6/a2/a3,-(sp)
  404.     move.l    _ArpBase,a6
  405.     move.l    16(sp),a0
  406.     movem.l    20(sp),d0/a1/a2/a3
  407.     jsr    -252(a6)
  408.     movem.l    (sp)+,a6/a2/a3
  409.     rts
  410.  
  411.     xdef    _GetAccess
  412. _GetAccess:
  413.     move.l    a6,-(sp)
  414.     move.l    _ArpBase,a6
  415.     move.l    8(sp),a1
  416.     jsr    92(a6)
  417.     move.l    (sp)+,a6
  418.     rts
  419.  
  420.     xdef    _GetDevInfo
  421. _GetDevInfo:
  422.     movem.l    a6/a2,-(sp)
  423.     move.l    _ArpBase,a6
  424.     move.l    12(sp),a2
  425.     jsr    -366(a6)
  426.     movem.l    (sp)+,a6/a2
  427.     rts
  428.  
  429.     xdef    _Getenv
  430. _Getenv:
  431.     move.l    a6,-(sp)
  432.     move.l    _ArpBase,a6
  433.     movem.l    8(sp),a0/a1
  434.     move.l    16(sp),d0
  435.     jsr    -282(a6)
  436.     move.l    (sp)+,a6
  437.     rts
  438.  
  439.     xdef    _GetKeywordIndex
  440. _GetKeywordIndex:
  441.     move.l    a6,-(sp)
  442.     move.l    _ArpBase,a6
  443.     movem.l    8(sp),a0/a1
  444.     jsr    -648(a6)
  445.     move.l    (sp)+,a6
  446.     rts
  447.  
  448.     xdef    _InitStdPacket
  449. _InitStdPacket:
  450.     movem.l    a6/a2,-(sp)
  451.     move.l    _ArpBase,a6
  452.     movem.l    12(sp),d0/a0/a1/a2
  453.     jsr    -324(a6)
  454.     movem.l    (sp)+,a6/a2
  455.     rts
  456.  
  457.     xdef    _LDiv
  458. _LDiv:
  459.     move.l    a6,-(sp)
  460.     move.l    _ArpBase,a6
  461.     movem.l    8(sp),d0/d1
  462.     jsr    -606(a6)
  463.     move.l    (sp)+,a6
  464.     rts
  465.  
  466.     xdef    _LMod
  467. _LMod:
  468.     move.l    a6,-(sp)
  469.     move.l    _ArpBase,a6
  470.     movem.l    8(sp),d0/d1
  471.     jsr    -612(a6)
  472.     move.l    (sp)+,a6
  473.     rts
  474.  
  475.     xdef    _LMult
  476. _LMult:
  477.     move.l    a6,-(sp)
  478.     move.l    _ArpBase,a6
  479.     movem.l    8(sp),d0/d1
  480.     jsr    -600(a6)
  481.     move.l    (sp)+,a6
  482.     rts
  483.  
  484.     xdef    _LoadPrg
  485. _LoadPrg:
  486.     move.l    a6,-(sp)
  487.     move.l    _ArpBase,a6
  488.     move.l    8(sp),d1
  489.     jsr    -552(a6)
  490.     move.l    (sp)+,a6
  491.     rts
  492.  
  493.     xdef    _ObtainResidentPrg
  494. _ObtainResidentPrg:
  495.     move.l    a6,-(sp)
  496.     move.l    _ArpBase,a6
  497.     move.l    8(sp),a0
  498.     jsr    -576(a6)
  499.     move.l    (sp)+,a6
  500.     rts
  501.  
  502.     xdef    _PathName
  503. _PathName:
  504.     move.l    a6,-(sp)
  505.     move.l    _ArpBase,a6
  506.     movem.l    8(sp),d0/a0
  507.     move.l    16(sp),d1
  508.     jsr    -330(a6)
  509.     move.l    (sp)+,a6
  510.     rts
  511.  
  512.     xdef    _PatternMatch
  513. _PatternMatch:
  514.     move.l    a6,-(sp)
  515.     move.l    _ArpBase,a6
  516.     movem.l    8(sp),a0/a1
  517.     jsr    32(a6)
  518.     move.l    (sp)+,a6
  519.     rts
  520.  
  521.     xdef    _PreParse
  522. _PreParse:
  523.     move.l    a6,-(sp)
  524.     move.l    _ArpBase,a6
  525.     movem.l    8(sp),a0/a1
  526.     jsr    -558(a6)
  527.     move.l    (sp)+,a6
  528.     rts
  529.  
  530.     xdef    _Printf
  531. _Printf:
  532.     move.l    a6,-(sp)
  533.     move.l    _ArpBase,a6
  534.     movem.l    8(sp),a0
  535.     lea.l    12(sp),a1
  536.     jsr    -228(a6)
  537.     move.l    (sp)+,a6
  538.     rts
  539.  
  540.     xdef    _Puts
  541. _Puts:
  542.     move.l    a6,-(sp)
  543.     move.l    _ArpBase,a6
  544.     move.l    8(sp),a1
  545.     jsr    -240(a6)
  546.     move.l    (sp)+,a6
  547.     rts
  548.  
  549.     xdef    _QSort
  550. _QSort:
  551.     move.l    a6,-(sp)
  552.     move.l    _ArpBase,a6
  553.     move.l    8(sp),a0
  554.     movem.l    12(sp),d0/d1/a1
  555.     jsr    26(a6)
  556.     move.l    (sp)+,a6
  557.     rts
  558.  
  559.     xdef    _ReadLine
  560. _ReadLine:
  561.     move.l    a6,-(sp)
  562.     move.l    _ArpBase,a6
  563.     move.l    8(sp),a0
  564.     jsr    -246(a6)
  565.     move.l    (sp)+,a6
  566.     rts
  567.  
  568.     xdef    _ReleaseResidentPrg
  569. _ReleaseResidentPrg:
  570.     move.l    a6,-(sp)
  571.     move.l    _ArpBase,a6
  572.     move.l    8(sp),d1
  573.     jsr    -636(a6)
  574.     move.l    (sp)+,a6
  575.     rts
  576.  
  577.     xdef    _RemResidentPrg
  578. _RemResidentPrg:
  579.     move.l    a6,-(sp)
  580.     move.l    _ArpBase,a6
  581.     move.l    8(sp),a0
  582.     jsr    -588(a6)
  583.     move.l    (sp)+,a6
  584.     rts
  585.  
  586.     xdef    _SendPacket
  587. _SendPacket:
  588.     move.l    a6,-(sp)
  589.     move.l    _ArpBase,a6
  590.     movem.l    8(sp),d0/a0/a1
  591.     jsr    -318(a6)
  592.     move.l    (sp)+,a6
  593.     rts
  594.  
  595.     xdef    _Setenv
  596. _Setenv:
  597.     move.l    a6,-(sp)
  598.     move.l    _ArpBase,a6
  599.     movem.l    8(sp),a0/a1
  600.     jsr    -288(a6)
  601.     move.l    (sp)+,a6
  602.     rts
  603.  
  604.     xdef    _SPrintf
  605. _SPrintf:
  606.     move.l    a6,-(sp)
  607.     move.l    _ArpBase,a6
  608.     movem.l    8(sp),d0/a0
  609.     lea.l    16(sp),a1
  610.     jsr    -642(a6)
  611.     move.l    (sp)+,a6
  612.     rts
  613.  
  614.     xdef    _StamptoStr
  615. _StamptoStr:
  616.     move.l    a6,-(sp)
  617.     move.l    _ArpBase,a6
  618.     move.l    8(sp),a0
  619.     jsr    -564(a6)
  620.     move.l    (sp)+,a6
  621.     rts
  622.  
  623.     xdef    _Strcmp
  624. _Strcmp:
  625.     move.l    a6,-(sp)
  626.     move.l    _ArpBase,a6
  627.     movem.l    8(sp),a0/a1
  628.     jsr    -522(a6)
  629.     move.l    (sp)+,a6
  630.     rts
  631.  
  632.     xdef    _Strncmp
  633. _Strncmp:
  634.     move.l    a6,-(sp)
  635.     move.l    _ArpBase,a6
  636.     movem.l    8(sp),a0/a1
  637.     move.l    16(sp),d0
  638.     jsr    -528(a6)
  639.     move.l    (sp)+,a6
  640.     rts
  641.  
  642.     xdef    _StrtoStamp
  643. _StrtoStamp:
  644.     move.l    a6,-(sp)
  645.     move.l    _ArpBase,a6
  646.     move.l    8(sp),a0
  647.     jsr    -570(a6)
  648.     move.l    (sp)+,a6
  649.     rts
  650.  
  651.     xdef    _SyncRun
  652. _SyncRun:
  653.     move.l    a6,-(sp)
  654.     move.l    _ArpBase,a6
  655.     movem.l    8(sp),a0/a1
  656.     movem.l    16(sp),d0/d1
  657.     jsr    -540(a6)
  658.     move.l    (sp)+,a6
  659.     rts
  660.  
  661.     xdef    _TackOn
  662. _TackOn:
  663.     move.l    a6,-(sp)
  664.     move.l    _ArpBase,a6
  665.     movem.l    8(sp),a0/a1
  666.     jsr    -624(a6)
  667.     move.l    (sp)+,a6
  668.     rts
  669.  
  670.     xdef    _Toupper
  671. _Toupper:
  672.     move.l    a6,-(sp)
  673.     move.l    _ArpBase,a6
  674.     IF    INT16
  675.     move.w    8(sp),d0
  676.     ELSE
  677.     move.l    8(sp),d0
  678.     ENDC
  679.     jsr    -534(a6)
  680.     move.l    (sp)+,a6
  681.     rts
  682.  
  683.     xdef    _UnLoadPrg
  684. _UnLoadPrg:
  685.     move.l    a6,-(sp)
  686.     move.l    _ArpBase,a6
  687.     move.l    8(sp),d1
  688.     jsr    -594(a6)
  689.     move.l    (sp)+,a6
  690.     rts
  691.  
  692.     end            ; Make the asm even happier
  693.