home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 364b.lha / PCQ_v1.1 / Runtime / System / arexx.asm next >
Encoding:
Assembly Source File  |  1990-04-08  |  9.9 KB  |  587 lines

  1.  
  2. *    ARexx.asm
  3. *    These routines call the ARexx resident process.
  4.  
  5.         SECTION Arexx,CODE
  6.  
  7.     XREF    _RexxSysBase
  8.  
  9. _LVORexx    EQU    -30
  10. *    XDEF    _LVORexx
  11. _LVOrxParse    EQU    -36    ; (private)
  12. *    XDEF    _LVOrxParse
  13. _LVOrxInstruct    EQU    -42    ; (private)
  14. *    XDEF    _LVOrxInstruct
  15. _LVOrxSuspend    EQU    -48    ; (private)
  16. *    XDEF    _LVOrxSuspend
  17. _LVOEvalOp    EQU    -54    ; (private)
  18. *    XDEF    _LVOEvalOp
  19. _LVOAssignValue    EQU    -60    ; (private)
  20. *    XDEF    _LVOAssignValue
  21. _LVOEnterSymbol    EQU    -66    ; (private)
  22. *    XDEF    _LVOEnterSymbol
  23. _LVOFetchValue    EQU    -72    ; (private)
  24. *    XDEF    _LVOFetchValue
  25. _LVOLookUpValue    EQU    -78    ; (private)
  26. *    XDEF    _LVOLookUpValue
  27. _LVOSetValue    EQU    -84    ; (private)
  28. *    XDEF    _LVOSetValue
  29. _LVOSymExpand    EQU    -90    ; (private)
  30. *    XDEF    _LVOSymExpand
  31.  
  32. _LVOErrorMsg    EQU    -96
  33. *    XDEF    _LVOErrorMsg
  34.     XDEF    _ErrorMsg
  35. _ErrorMsg
  36.     move.l    8(sp),d0    ; list
  37.     move.l    _RexxSysBase,a6
  38.     jsr    _LVOErrorMsg(a6)
  39.     move.l    4(sp),a1
  40.     move.l    a0,(a1)
  41.     rts
  42.  
  43. _LVOIsSymbol    EQU    -102
  44. *    XDEF    _LVOIsSymbol
  45.     XDEF    _IsSymbol
  46. _IsSymbol
  47.     move.l    8(sp),a0
  48.     move.l    _RexxSysBase,a6
  49.     jsr    _LVOIsSymbol(a6)
  50.     move.l    4(sp),a0
  51.     move.l    d1,(a0)
  52.     rts
  53.  
  54. _LVOCurrentEnv    EQU    -108
  55. *    XDEF    _LVOCurrentEnv
  56.     XDEF    _CurrentEnv
  57. _CurrentEnv
  58.     move.l    4(sp),a0
  59.     move.l    _RexxSysBase,a6
  60.     jmp    _LVOCurrentEnv(a6)
  61.  
  62. _LVOGetSpace    EQU    -114
  63. *    XDEF    _LVOGetSpace
  64.     XDEF    _GetSpace
  65. _GetSpace
  66.     move.l    8(sp),a0
  67.     move.l    4(sp),d0
  68.     move.l    _RexxSysBase,a6
  69.     jmp    _LVOGetSpace(a6)
  70.  
  71. _LVOFreeSpace    EQU    -120
  72. *    XDEF    _LVOFreeSpace
  73.     XDEF    _FreeSpace
  74. _FreeSpace
  75.     move.l    12(sp),a0
  76.     move.l    8(sp),a1
  77.     move.l    4(sp),d0
  78.     move.l    _RexxSysBase,a6
  79.     jmp    _LVOFreeSpace(a6)
  80.  
  81. _LVOCreateArgstring    EQU    -126
  82. *    XDEF    _LVOCreateArgstring
  83.     XDEF    _CreateArgstring
  84. _CreateArgstring
  85.     move.l    8(sp),a0
  86.     move.l    4(sp),d0
  87.     move.l    _RexxSysBase,a6
  88.     jmp    _LVOCreateArgstring(a6)
  89.  
  90. _LVODeleteArgstring    EQU    -132
  91. *    XDEF    _LVODeleteArgstring
  92.     XDEF    _DeleteArgstring
  93. _DeleteArgstring
  94.     move.l    4(sp),a0
  95.     move.l    _RexxSysBase,a6
  96.     jmp    _LVODeleteArgstring(a6)
  97.  
  98. _LVOLengthArgstring    EQU    -138
  99. *    XDEF    _LVOLengthArgstring
  100.     XDEF    _LengthArgstring
  101. _LengthArgstring
  102.     move.l    4(sp),a0
  103.     move.l    _RexxSysBase,a6
  104.     jmp    _LVOLengthArgstring(a6)
  105.  
  106. _LVOCreateRexxMsg    EQU    -144
  107. *    XDEF    _LVOCreateRexxMsg
  108.     XDEF    _CreateRexxMsg
  109. _CreateRexxMsg
  110.     move.l    12(sp),a0
  111.     move.l    8(sp),a1
  112.     move.l    4(sp),d0
  113.     move.l    _RexxSysBase,a6
  114.     jmp    _LVOCreateRexxMsg(a6)
  115.  
  116. _LVODeleteRexxMsg    EQU    -150
  117. *    XDEF    _LVODeleteRexxMsg
  118.     XDEF    _DeleteRexxMsg
  119. _DeleteRexxMsg
  120.     move.l    4(sp),a0
  121.     move.l    _RexxSysBase,a6
  122.     jmp    _LVODeleteRexxMsg(a6)
  123.  
  124. _LVOClearRexxMsg    EQU    -156
  125. *    XDEF    _LVOClearRexxMsg
  126.     XDEF    _ClearRexxMsg
  127. _ClearRexxMsg
  128.     move.l    8(sp),a0
  129.     move.l    4(sp),d0
  130.     move.l    _RexxSysBase,a6
  131.     jmp    _LVOClearRexxMsg(a6)
  132.  
  133. _LVOFillRexxMsg        EQU    -162
  134. *    XDEF    _LVOFillRexxMsg
  135.     XDEF    _FillRexxMsg
  136. _FillRexxMsg
  137.     move.l    12(sp),a0
  138.     move.l    8(sp),d0
  139.     move.l    4(sp),d1
  140.     move.l    _RexxSysBase,a6
  141.     jmp    _LVOFillRexxMsg(a6)
  142.  
  143. _LVOIsRexxMsg        EQU    -168
  144. *    XDEF    _LVOIsRexxMsg
  145.     XDEF    _IsRexxMsg
  146. _IsRexxMsg
  147.     move.l    4(sp),a0
  148.     move.l    _RexxSysBase,a6
  149.     jmp    _LVOIsRexxMsg(a6)
  150.  
  151.  
  152. _LVOAddRsrcNode        EQU    -174
  153. *    XDEF    _LVOAddRsrcNode
  154.     XDEF    _AddRsrcNode
  155. _AddRsrcNode
  156.     move.l    12(sp),a0
  157.     move.l    8(sp),a1
  158.     move.l    4(sp),d0
  159.     move.l    _RexxSysBase,a6
  160.     jmp    _LVOAddRsrcNode(a6)
  161.  
  162. _LVOFindRsrcNode    EQU    -180
  163. *    XDEF    _LVOFindRsrcNode
  164.     XDEF    _FindRsrcNode
  165. _FindRsrcNode
  166.     move.l    12(sp),a0
  167.     move.l    8(sp),a1
  168.     move.l    4(sp),d0
  169.     move.l    _RexxSysBase,a6
  170.     jmp    _LVOFindRsrcNode(a6)
  171.  
  172. _LVORemRsrcList        EQU    -186
  173. *    XDEF    _LVORemRsrcList
  174.     XDEF    _RemRsrcList
  175. _RemRsrcList
  176.     move.l    4(sp),a0
  177.     move.l    _RexxSysBase,a6
  178.     jmp    _LVORemRsrcList(a6)
  179.  
  180. _LVORemRsrcNode        EQU    -192
  181. *    XDEF    _LVORemRsrcNode
  182.     XDEF    _RemRsrcNode
  183. _RemRsrcNode
  184.     move.l    4(sp),a0
  185.     move.l    _RexxSysBase,a6
  186.     jmp    _LVORemRsrcNode(a6)
  187.  
  188. _LVOOpenPublicPort    EQU    -198
  189. *    XDEF    _LVOOpenPublicPort
  190.     XDEF    _OpenPublicPort
  191. _OpenPublicPort
  192.     move.l    8(sp),a0
  193.     move.l    4(sp),a1
  194.     move.l    _RexxSysBase,a6
  195.     jmp    _LVOOpenPublicPort(a6)
  196.  
  197. _LVOClosePublicPort    EQU    -204
  198. *    XDEF    _LVOClosePublicPort
  199.     XDEF    _ClosePublicPort
  200. _ClosePublicPort
  201.     move.l    4(sp),a0
  202.     move.l    _RexxSysBase,a6
  203.     jmp    _LVOClosePublicPort(a6)
  204.  
  205. _LVOListNames        EQU    -210
  206. *    XDEF    _LVOListNames
  207.     XDEF    _ListNames
  208. _ListNames
  209.     move.l    6(sp),a0
  210.     move.w    4(sp),d0
  211.     move.l    _RexxSysBase,a6
  212.     jmp    _LVOListNames(a6)
  213.  
  214.  
  215. _LVOClearMem        EQU    -216
  216. *    XDEF    _LVOClearMem
  217.     XDEF    _ClearMem
  218. _ClearMem
  219.     move.l    8(sp),a0
  220.     move.l    4(sp),d0
  221.     move.l    _RexxSysBase,a6
  222.     jmp    _LVOClearMem(a6)
  223.  
  224. _LVOInitList        EQU    -222
  225. *    XDEF    _LVOInitList
  226.     XDEF    _InitList
  227. _InitList
  228.     move.l    4(sp),a0
  229.     move.l    _RexxSysBase,a6
  230.     jmp    _LVOInitList(a6)
  231.  
  232. _LVOInitPort        EQU    -228
  233. *    XDEF    _LVOInitPort
  234.     XDEF    _InitPort
  235. _InitPort
  236.     move.l    8(sp),a0
  237.     move.l    4(sp),a1
  238.     move.l    _RexxSysBase,a6
  239.     jmp    _LVOInitPort(a6)
  240.  
  241. _LVOFreePort        EQU    -234
  242. *    XDEF    _LVOFreePort
  243.     XDEF    _FreePort
  244. _FreePort
  245.     move.l    4(sp),a0
  246.     move.l    _RexxSysBase,a6
  247.     jmp    _LVOFreePort(a6)
  248.  
  249. _LVOCmpString        EQU    -240
  250. *    XDEF    _LVOCmpString
  251.     XDEF    _CmpString
  252. _CmpString
  253.     move.l    8(sp),a0
  254.     move.l    4(sp),a1
  255.     move.l    _RexxSysBase,a6
  256.     jmp    _LVOCmpString(a6)
  257.  
  258. _LVOStcToken        EQU    -246
  259. *    XDEF    _LVOStcToken
  260.     XDEF    _StcToken
  261. _StcToken
  262.     move.l    20(sp),a0
  263.     move.l    _RexxSysBase,a6
  264.     jsr    _LVOStcToken(a6)
  265.     move.l    16(sp),a6
  266.     move.b    d0,(a6)
  267.     move.l    12(sp),a6
  268.     move.l    d1,(a6)
  269.     move.l    8(sp),a6
  270.     move.l    a0,(a6)
  271.     move.l    4(sp),a6
  272.     move.l    a1,(a6)
  273.     rts
  274.  
  275. _LVOStrcmpN    EQU    -252
  276. *    XDEF    _LVOStrcmpN
  277.     XDEF    _StrcmpN
  278. _StrcmpN
  279.     move.l    12(sp),a0
  280.     move.l    8(sp),a1
  281.     move.l    4(sp),d0
  282.     move.l    _RexxSysBase,a6
  283.     jmp    _LVOStrcmpN(a6)
  284.  
  285. _LVOStrcmpU    EQU    -258
  286. *    XDEF    _LVOStrcmpU
  287.  
  288. _LVOStrcpyA    EQU    -264
  289. *    XDEF    _LVOStrcpyA
  290.     XDEF    _StrcpyA
  291. _StrcpyA
  292.     move.l    12(sp),a0
  293.     move.l    8(sp),a1
  294.     move.l    4(sp),d0
  295.     move.l    _RexxSysBase,a6
  296.     jmp    _LVOStrcpyA(a6)
  297.  
  298. _LVOStrcpyN    EQU    -270
  299. *    XDEF    _LVOStrcpyN
  300.     XDEF    _StrcpyN
  301. _StrcpyN
  302.     move.l    12(sp),a0
  303.     move.l    8(sp),a1
  304.     move.l    4(sp),d0
  305.     move.l    _RexxSysBase,a6
  306.     jmp    _LVOStrcpyN(a6)
  307.  
  308. _LVOStrcpyU    EQU    -276
  309. *    XDEF    _LVOStrcpyU
  310.     XDEF    _StrcpyU
  311. _StrcpyU
  312.     move.l    12(sp),a0
  313.     move.l    8(sp),a1
  314.     move.l    4(sp),d0
  315.     move.l    _RexxSysBase,a6
  316.     jmp    _LVOStrcpyU(a6)
  317.  
  318. _LVOStrflipN    EQU    -282
  319. *    XDEF    _LVOStrflipN
  320.     XDEF    _StrflipN
  321. _StrflipN
  322.     move.l    8(sp),a0
  323.     move.l    4(sp),d0
  324.     move.l    _RexxSysBase,a6
  325.     jmp    _LVOStrflipN(a6)
  326.  
  327. _LVOStrlen    EQU    -288
  328. *    XDEF    _LVOStrlen
  329.     XDEF    _RexxStrlen
  330. _RexxStrlen
  331.     move.l    4(sp),a0
  332.     move.l    _RexxSysBase,a6
  333.     jmp    _LVOStrlen(a6)
  334.  
  335. _LVOToUpper    EQU    -294
  336. *    XDEF    _LVOToUpper
  337.     XDEF    _ToUpper
  338. _ToUpper
  339.     move.w    4(sp),d0
  340.     move.l    _RexxSysBase,a6
  341.     jmp    _LVOToUpper(a6)
  342.  
  343. _LVOCVa2i    EQU    -300
  344. *    XDEF    _LVOCVa2i
  345.     XDEF    _CVa2i
  346. _CVa2i
  347.     move.l    8(sp),a0
  348.     move.l    _RexxSysBase,a6
  349.     jsr    _LVOCVa2i(a6)
  350.     move.l    4(sp),a0
  351.     move.l    d1,(a0)
  352.     rts
  353.  
  354. _LVOCVi2a    EQU    -306
  355. *    XDEF    _LVOCVi2a
  356.     XDEF    _CVi2a
  357. _CVi2a
  358.     move.l    16(sp),a0
  359.     move.l    12(sp),d0
  360.     move.l    8(sp),d1
  361.     move.l    _RexxSysBase,a6
  362.     jsr    _LVOCVi2a(a6)
  363.     move.l    4(sp),a1
  364.     move.l    a0,(a1)
  365.     rts
  366.  
  367. _LVOCVi2arg    EQU    -312
  368. *    XDEF    _LVOCVi2arg
  369.     XDEF    _CVi2arg
  370. _CVi2arg
  371.     move.l    8(sp),d0
  372.     move.l    4(sp),d1
  373.     move.l    _RexxSysBase,a6
  374.     jmp    _LVOCVi2arg(a6)
  375.  
  376. _LVOCVi2az    EQU    -318
  377. *    XDEF    _LVOCVi2az
  378.     XDEF    _CVi2az
  379. _CVi2az
  380.     move.l    16(sp),a0
  381.     move.l    12(sp),d0
  382.     move.l    8(sp),d1
  383.     move.l    _RexxSysBase,a6
  384.     jsr    _LVOCVi2az(a6)
  385.     move.l    4(sp),a1
  386.     move.l    a0,(a1)
  387.     rts
  388.  
  389. _LVOCVc2x    EQU    -324
  390. *    XDEF    _LVOCVc2x
  391.     XDEF    _CVc2x
  392. _CVc2x
  393.     move.l    16(sp),a0
  394.     move.l    12(sp),a1
  395.     move.l    8(sp),d0
  396.     move.l    4(sp),d1
  397.     move.l    _RexxSysBase,a6
  398.     jmp    _LVOCVc2x(a6)
  399.  
  400. _LVOCVx2c    EQU    -330
  401. *    XDEF    _LVOCVx2c
  402.     XDEF    _CVx2c
  403. _CVx2c
  404.     move.l    16(sp),a0
  405.     move.l    12(sp),a1
  406.     move.l    8(sp),d0
  407.     move.l    4(sp),d1
  408.     move.l    _RexxSysBase,a6
  409.     jmp    _LVOCVx2c(a6)
  410.  
  411. _LVOOpenF    EQU    -336
  412. *    XDEF    _LVOOpenF
  413.     XDEF    _OpenF
  414. _OpenF
  415.     move.l    16(sp),a0
  416.     move.l    12(sp),a1
  417.     move.l    8(sp),d0
  418.     move.l    4(sp),d1
  419.     move.l    _RexxSysBase,a6
  420.     jmp    _LVOOpenF(a6)
  421.  
  422. _LVOCloseF    EQU    -342
  423. *    XDEF    _LVOCloseF
  424.     XDEF    _CloseF
  425. _CloseF
  426.     move.l    4(sp),a0
  427.     move.l    _RexxSysBase,a6
  428.     jmp    _LVOCloseF(a6)
  429.  
  430. _LVOReadStr    EQU    -348
  431. *    XDEF    _LVOReadStr
  432.     XDEF    _ReadStr
  433. _ReadStr
  434.     move.l    16(sp),a0
  435.     move.l    12(sp),a1
  436.     move.l    8(sp),d0
  437.     move.l    _RexxSysBase,a6
  438.     jsr    _LVOReadStr(a6)
  439.     move.l    4(sp),a0
  440.     move.l    a1,(a0)
  441.     rts
  442.  
  443. _LVOReadF    EQU    -354
  444. *    XDEF    _LVOReadF
  445.     XDEF    _ReadF
  446. _ReadF
  447.     move.l    12(sp),a0
  448.     move.l    8(sp),a1
  449.     move.l    4(sp),d0
  450.     move.l    _RexxSysBase,a6
  451.     jmp    _LVOReadF(a6)
  452.  
  453. _LVOWriteF    EQU    -360
  454. *    XDEF    _LVOWriteF
  455.     XDEF    _WriteF
  456. _WriteF
  457.     move.l    12(sp),a0
  458.     move.l    8(sp),a1
  459.     move.l    4(sp),d0
  460.     move.l    _RexxSysBase,a6
  461.     jmp    _LVOWriteF(a6)
  462.  
  463. _LVOSeekF    EQU    -366
  464. *    XDEF    _LVOSeekF
  465.     XDEF    _SeekF
  466. _SeekF
  467.     move.l    12(sp),a0
  468.     move.l    8(sp),d0
  469.     move.l    4(sp),d1
  470.     move.l    _RexxSysBase,a6
  471.     jmp    _LVOSeekF(a6)
  472.  
  473. _LVOQueueF    EQU    -372
  474. *    XDEF    _LVOQueueF
  475.     XDEF    _QueueF
  476. _QueueF
  477.     move.l    12(sp),a0
  478.     move.l    8(sp),a1
  479.     move.l    4(sp),d0
  480.     move.l    _RexxSysBase,a6
  481.     jmp    _LVOQueueF(a6)
  482.  
  483. _LVOStackF    EQU    -378
  484. *    XDEF    _LVOStackF
  485.     XDEF    _StackF
  486. _StackF
  487.     move.l    12(sp),a0
  488.     move.l    8(sp),a1
  489.     move.l    4(sp),d0
  490.     move.l    _RexxSysBase,a6
  491.     jmp    _LVOStackF(a6)
  492.  
  493. _LVOExistF    EQU    -384
  494. *    XDEF    _LVOExistF
  495.     XDEF    _ExistF
  496. _ExistF
  497.     move.l    4(sp),a0
  498.     move.l    _RexxSysBase,a6
  499.     jmp    _LVOExistF(a6)
  500.  
  501. _LVODOSCommand        EQU    -390
  502. *    XDEF    _LVODOSCommand
  503.  
  504. _LVODOSRead        EQU    -396
  505. *    XDEF    _LVODOSRead
  506.     XDEF    _RexxDOSRead
  507. _RexxDOSRead
  508.     move.l    12(sp),a0
  509.     move.l    8(sp),a1
  510.     move.l    4(sp),d0
  511.     move.l    _RexxSysBase,a6
  512.     jmp    _LVODOSRead(a6)
  513.  
  514. _LVODOSWrite        EQU    -402
  515. *    XDEF    _LVODOSWrite
  516.     XDEF    _RexxDOSWrite
  517. _RexxDOSWrite
  518.     move.l    12(sp),a0
  519.     move.l    8(sp),a1
  520.     move.l    4(sp),d0
  521.     move.l    _RexxSysBase,a6
  522.     jmp    _LVODOSWrite(a6)
  523.  
  524. _LVOCreateDOSPkt    EQU    -408
  525. *    XDEF    _LVOCreateDOSPkt
  526.     XDEF    _CreateDOSPkt
  527. _CreateDOSPkt
  528.     move.l    _RexxSysBase,a6
  529.     jmp    _LVOCreateDOSPkt(a6)
  530.  
  531. _LVODeleteDOSPkt    EQU    -414
  532. *    XDEF    _LVODeleteDOSPkt
  533.     XDEF    _DeleteDOSPkt
  534. _DeleteDOSPkt
  535.     move.l    4(sp),a0
  536.     move.l    _RexxSysBase,a6
  537.     jmp    _LVODeleteDOSPkt(a6)
  538.  
  539. _LVOSendDOSPkt        EQU    -420    ; private
  540. _LVOWaitDOSPkt        EQU    -426    ; private
  541. _LVOFindDevice        EQU    -432
  542. *    XDEF    _LVOFindDevice
  543.     XDEF    _FindDevice
  544. _FindDevice
  545.     move.l    8(sp),a0
  546.     move.l    4(sp),d0
  547.     move.l    _RexxSysBase,a6
  548.     jmp    _LVOFindDevice(a6)
  549.  
  550.  
  551. _LVOAddClipNode        EQU    -438
  552. *    XDEF    _LVOAddClipNode
  553.     XDEF    _AddClipNode
  554. _AddClipNode
  555.     move.l    16(sp),a0
  556.     move.l    12(sp),a1
  557.     move.l    8(sp),d0
  558.     move.l    4(sp),d1
  559.     move.l    _RexxSysBase,a6
  560.     jmp    _LVOAddClipNode(a6)
  561.  
  562. _LVORemClipNode        EQU    -444
  563. *    XDEF    _LVORemClipNode
  564.     XDEF    _RemClipNode
  565. _RemClipNode
  566.     move.l    4(sp),a0
  567.     move.l    _RexxSysBase,a6
  568.     jmp    _LVORemClipNode(a6)
  569.  
  570. _LVOLockRexxBase    EQU    -450
  571. *    XDEF    _LVOLockRexxBase
  572.     XDEF    _LockRexxBase
  573. _LockRexxBase
  574.     move.l    4(sp),d0
  575.     move.l    _RexxSysBase,a6
  576.     jmp    _LVOLockRexxBase(a6)
  577.  
  578. _LVOUnlockRexxBase    EQU    -456
  579. *    XDEF    _LVOUnlockRexxBase
  580.     XDEF    _UnlockRexxBase
  581. _UnlockRexxBase
  582.     move.l    4(sp),d0
  583.     move.l    _RexxSysBase,a6
  584.     jmp    _LVOUnlockRexxBase(a6)
  585.  
  586.     END
  587.