home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d593 / analyrim.lha / AnalyRim / AnalyRIM.zoo / GetSel2.Cmd < prev    next >
OS/2 REXX Batch file  |  1992-01-05  |  3KB  |  207 lines

  1. /#
  2. //
  3. VM
  4. RM
  5. ET *X*
  6. CA P#0#0 G0
  7. TE *U HERE
  8. TE R=T
  9. TE S=U-1.
  10. TE P=T
  11. TE Q=S
  12. *C LOOP
  13. *COOP
  14. *CLOOP
  15. L A0
  16. VE
  17. %Enter:(F10=Sel,text<Rtn>,arrows,F1=DoCmd,F2=EndCmdProc:%E" %\%
  18. VM
  19. TE B0=41743810560.
  20. DF B0:C0 [F20.1]
  21. L C0
  22. EV *U STRVL A0,1;5
  23. TE *U STRVL A0,1;5
  24. TE C0=%
  25. L E0
  26. EV %=DABS(B0-C0)
  27. TE DABS(B0-C0)\H=%
  28. TE *F NOTUP
  29. L P#_PQ
  30. VE
  31. CA G0 P#0#0
  32. 1
  33. VM
  34. TE *U HERE
  35. TE P=T
  36. TE Q=U-1.
  37. CA P#0#0 G0
  38. VE
  39. DF P#0#0 ['>',F8.2]
  40. VM
  41. TE %=1.
  42. TE *F LOOP
  43. *COTUP
  44. *C NOTUP
  45. *CNOTUP
  46. TE B0=41750102016.
  47. TE %=DABS(B0-C0)
  48. TE *F NOTLFT
  49. L P#_PQ
  50. VE
  51. CA G0 P#0#0
  52. 3
  53. VM
  54. TE *U HERE
  55. TE P=T
  56. TE Q=U-1.
  57. CA P#0#0 G0
  58. VE
  59. DF P#0#0 ['>',F8.2]
  60. VM
  61. TE %=1.
  62. TE *F LOOP
  63. *C NOTLFT
  64. *COTLFT
  65. *CNOTLFT
  66. TE B0=41748004864.
  67. TE %=DABS(B0-C0)
  68. TE *F NOTRGT
  69. L P#_PQ
  70. VE
  71. CA G0 P#0#0
  72. 4
  73. VM
  74. TE *U HERE
  75. TE P=T
  76. TE Q=U-1.
  77. CA P#0#0 G0
  78. VE
  79. DF P#0#0 ['>',F8.2]
  80. VM
  81. TE %=1.
  82. TE *F LOOP
  83. *C NOTRGT
  84. *COTRGT
  85. *CNOTRGT
  86. TE B0=41745907712.
  87. TE %=DABS(B0-C0)
  88. TE *F NOTDWN
  89. L P#_PQ
  90. VE
  91. CA G0 P#0#0
  92. 2
  93. VM
  94. TE *U HERE
  95. TE P=T
  96. TE Q=U-1.
  97. CA P#0#0 G0
  98. VE
  99. DF P#0#0 ['>',F8.2]
  100. VM
  101. TE %=1.
  102. TE *F LOOP
  103. *C NOTDWN
  104. *COTDWN
  105. *CNOTDWN
  106. TE B0=41729097728.
  107. TE %=DABS(B0-C0)
  108. TE *F NOTSEL
  109. *U HERE
  110. L D0
  111. TE U=U-1.
  112. E _@T0,U0
  113. L P#_RS
  114. ED ~~__{D0~
  115. ED /*X*//
  116. TE %=((P-R)*(P-R)+(Q-S)*(Q-S))
  117. TE *F LOOP
  118. CA P#_RS G0
  119. TE %=1.
  120. TE *F LOOP
  121. *C NOTSEL
  122. *COTSEL
  123. *CNOTSEL
  124. TE B0=41712320512.
  125. TE %=DABS(B0-C0)
  126. TE *F NOTENT
  127. L P#_RS
  128. ED /*X*//
  129. CA G0 P#_PQ
  130. TE %=1.
  131. TE *F DONE
  132. *C NOTENT
  133. *COTENT
  134. *CNOTENT
  135. TE B0=41710223360.
  136. TE %=DABS(B0-C0)
  137. TE *F NOTDO
  138. VE
  139. L P#_RS
  140. %Enter command>%%\%
  141. VM
  142. TE %=1.
  143. TE *F LOOP
  144. *C NOTDO
  145. *CNOTDO
  146. *COTDO
  147. *C Add check so <char>F10 can enter char AND select in one go.
  148. L I0
  149. EV *U STRVL A0,2;5
  150. TE *U STRVL A0,2;5
  151. TE I0=%
  152. TE B0=41729097728.
  153. TE %=DABS(B0-I0)
  154. TE *F NOTXSEL
  155. L I0
  156. TE *U STRVL A0,1;1
  157. TE I0=%
  158. L A0
  159. ET _#I0
  160. L P#_RS
  161. ED ~~__{A0~
  162. ED /*X*//
  163. TE %=((P-R)*(P-R)+(Q-S)*Q-S))
  164. TE *F PROCSEL
  165. CA P#_RS G0
  166. *C PROCSEL
  167. *U HERE
  168. L D0
  169. TE U=U-1.
  170. E _@T0,U0
  171. L P#_RS
  172. ED ~~__{D0~
  173. ED /*X*//
  174. *C NOTXSEL
  175. *C End check for <char>F10
  176. L P#_RS
  177. ED ~~__{A0~
  178. VE
  179. ED /*X*//
  180. TE %=((P-R)*(P-R)+(Q-S)*(Q-S))
  181. TE *F LOOP
  182. CA P#_RS G0
  183. TE %=1.
  184. TE *F LOOP
  185. *C Get by keys. This procedure is meant to be mapped to a
  186. *C key in AnalytiCalc (VAX version) to allow "key mode"
  187. *C range locations. You can enter arrow keys, which will have
  188. *C the desired effect of moving you around the sheet, or
  189. *C bits of formulas, which will be entered (you should
  190. *C terminate these by RETURN), or select (VT200 keypad)
  191. *C to enter the "current" cell name into the formula,
  192. *C or ENTER (on auxiliary keypad key) to terminate the
  193. *C formula and enter it.
  194. *C The DO key allows any AnalytiCalc command to be entered.
  195. *C On Amiga, the F2 key works as enter, F1 as DO, and F10 as
  196. *C select. This version also allows a single character to
  197. *C be entered with F10 after, to enter that character and THEN
  198. *C the cell name pointed to. This is useful for second cellnames
  199. *C of ranges or for adding the comma between ranges or cellnames.
  200. *CDONE
  201. *C DONE
  202. *CONE
  203. L P#_RS
  204. V
  205. RI
  206. /#
  207.