xrpn 1.1.3 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (291) hide show
  1. checksums.yaml +4 -4
  2. data/bin/xrpn +5 -5
  3. data/lib/xrpn_load.rb +2 -0
  4. data/xrpn.gemspec +2 -3
  5. metadata +3 -302
  6. data/cmd/abs +0 -7
  7. data/cmd/acos +0 -10
  8. data/cmd/adate +0 -12
  9. data/cmd/adateiso +0 -13
  10. data/cmd/add +0 -9
  11. data/cmd/adv +0 -7
  12. data/cmd/agsub +0 -8
  13. data/cmd/aleng +0 -8
  14. data/cmd/almcat +0 -7
  15. data/cmd/almnow +0 -7
  16. data/cmd/anum +0 -10
  17. data/cmd/aoff +0 -7
  18. data/cmd/aon +0 -7
  19. data/cmd/appchr +0 -13
  20. data/cmd/apprec +0 -13
  21. data/cmd/arcl +0 -22
  22. data/cmd/arcli +0 -7
  23. data/cmd/arclrec +0 -30
  24. data/cmd/arot +0 -13
  25. data/cmd/ashf +0 -7
  26. data/cmd/asin +0 -10
  27. data/cmd/asroom +0 -7
  28. data/cmd/asto +0 -21
  29. data/cmd/asub +0 -8
  30. data/cmd/atan +0 -10
  31. data/cmd/atime +0 -26
  32. data/cmd/atime24 +0 -21
  33. data/cmd/atox +0 -9
  34. data/cmd/aview +0 -7
  35. data/cmd/aviewc +0 -7
  36. data/cmd/beep +0 -7
  37. data/cmd/bindec +0 -8
  38. data/cmd/cat +0 -26
  39. data/cmd/cf +0 -7
  40. data/cmd/chs +0 -7
  41. data/cmd/cla +0 -7
  42. data/cmd/clalma +0 -7
  43. data/cmd/clalmx +0 -7
  44. data/cmd/cld +0 -6
  45. data/cmd/clear +0 -7
  46. data/cmd/clfl +0 -13
  47. data/cmd/clk12 +0 -7
  48. data/cmd/clk24 +0 -7
  49. data/cmd/clkeys +0 -7
  50. data/cmd/clock +0 -7
  51. data/cmd/clp +0 -8
  52. data/cmd/clralms +0 -7
  53. data/cmd/clrg +0 -7
  54. data/cmd/clrgx +0 -12
  55. data/cmd/cls +0 -12
  56. data/cmd/clst +0 -10
  57. data/cmd/clx +0 -8
  58. data/cmd/cmdadd +0 -7
  59. data/cmd/cmddel +0 -7
  60. data/cmd/correct +0 -7
  61. data/cmd/cos +0 -10
  62. data/cmd/crflas +0 -9
  63. data/cmd/crfld +0 -9
  64. data/cmd/cube +0 -8
  65. data/cmd/d_r +0 -8
  66. data/cmd/date +0 -8
  67. data/cmd/dateplus +0 -12
  68. data/cmd/ddate +0 -11
  69. data/cmd/dec +0 -7
  70. data/cmd/decbin +0 -8
  71. data/cmd/dechex +0 -8
  72. data/cmd/decoct +0 -8
  73. data/cmd/deg +0 -7
  74. data/cmd/degq +0 -7
  75. data/cmd/delchr +0 -14
  76. data/cmd/delrec +0 -12
  77. data/cmd/divide +0 -9
  78. data/cmd/dmy +0 -7
  79. data/cmd/dot +0 -7
  80. data/cmd/dow +0 -9
  81. data/cmd/drop +0 -7
  82. data/cmd/dropy +0 -7
  83. data/cmd/dse +0 -40
  84. data/cmd/ed +0 -7
  85. data/cmd/emdir +0 -7
  86. data/cmd/emdirx +0 -14
  87. data/cmd/emroom +0 -7
  88. data/cmd/end +0 -9
  89. data/cmd/eng +0 -9
  90. data/cmd/enter +0 -8
  91. data/cmd/exp +0 -9
  92. data/cmd/expx1 +0 -9
  93. data/cmd/fact +0 -9
  94. data/cmd/fc +0 -7
  95. data/cmd/fcc +0 -8
  96. data/cmd/fcs +0 -8
  97. data/cmd/fix +0 -9
  98. data/cmd/fixq +0 -7
  99. data/cmd/flsize +0 -7
  100. data/cmd/frc +0 -8
  101. data/cmd/fs +0 -7
  102. data/cmd/fsc +0 -8
  103. data/cmd/fss +0 -8
  104. data/cmd/geir +0 -11
  105. data/cmd/getas +0 -7
  106. data/cmd/getfile +0 -12
  107. data/cmd/getfilea +0 -11
  108. data/cmd/getkey +0 -9
  109. data/cmd/getkeyx +0 -10
  110. data/cmd/getp +0 -13
  111. data/cmd/getr +0 -13
  112. data/cmd/getrec +0 -8
  113. data/cmd/getrx +0 -17
  114. data/cmd/getsub +0 -7
  115. data/cmd/getweb +0 -12
  116. data/cmd/getx +0 -12
  117. data/cmd/grad +0 -7
  118. data/cmd/gsb +0 -7
  119. data/cmd/gto +0 -23
  120. data/cmd/help +0 -14
  121. data/cmd/hexdec +0 -8
  122. data/cmd/hms +0 -12
  123. data/cmd/hmsminus +0 -14
  124. data/cmd/hmsplus +0 -13
  125. data/cmd/hr +0 -11
  126. data/cmd/inschr +0 -14
  127. data/cmd/insrec +0 -12
  128. data/cmd/int +0 -8
  129. data/cmd/invf +0 -7
  130. data/cmd/isg +0 -40
  131. data/cmd/lastx +0 -8
  132. data/cmd/lbl +0 -6
  133. data/cmd/lift +0 -8
  134. data/cmd/ln +0 -8
  135. data/cmd/ln1x +0 -8
  136. data/cmd/log +0 -8
  137. data/cmd/mdy +0 -7
  138. data/cmd/mean +0 -11
  139. data/cmd/mod +0 -13
  140. data/cmd/multiply +0 -9
  141. data/cmd/oct +0 -7
  142. data/cmd/octdec +0 -8
  143. data/cmd/off +0 -8
  144. data/cmd/on +0 -7
  145. data/cmd/p_r +0 -13
  146. data/cmd/pack +0 -7
  147. data/cmd/page +0 -13
  148. data/cmd/pagedel +0 -8
  149. data/cmd/pageq +0 -7
  150. data/cmd/pageswap +0 -8
  151. data/cmd/pasn +0 -7
  152. data/cmd/pcat +0 -14
  153. data/cmd/pclps +0 -12
  154. data/cmd/percent +0 -9
  155. data/cmd/percentch +0 -9
  156. data/cmd/pi +0 -8
  157. data/cmd/posa +0 -23
  158. data/cmd/posfl +0 -26
  159. data/cmd/pow +0 -9
  160. data/cmd/pprg +0 -27
  161. data/cmd/pprgx +0 -33
  162. data/cmd/pra +0 -7
  163. data/cmd/prflags +0 -8
  164. data/cmd/prompt +0 -8
  165. data/cmd/prp +0 -7
  166. data/cmd/prregs +0 -8
  167. data/cmd/prstk +0 -10
  168. data/cmd/prx +0 -7
  169. data/cmd/prxm +0 -21
  170. data/cmd/pse +0 -7
  171. data/cmd/psize +0 -7
  172. data/cmd/purfl +0 -14
  173. data/cmd/r_d +0 -8
  174. data/cmd/r_p +0 -18
  175. data/cmd/rad +0 -7
  176. data/cmd/rand +0 -10
  177. data/cmd/rcl +0 -23
  178. data/cmd/rclaf +0 -7
  179. data/cmd/rclflag +0 -16
  180. data/cmd/rclpt +0 -8
  181. data/cmd/rclpta +0 -16
  182. data/cmd/rclsw +0 -7
  183. data/cmd/rdn +0 -7
  184. data/cmd/recip +0 -8
  185. data/cmd/regmove +0 -18
  186. data/cmd/regswap +0 -19
  187. data/cmd/reload +0 -7
  188. data/cmd/reszfl +0 -7
  189. data/cmd/rnd +0 -8
  190. data/cmd/root +0 -9
  191. data/cmd/rtn +0 -12
  192. data/cmd/rubycmd +0 -7
  193. data/cmd/runsw +0 -7
  194. data/cmd/rup +0 -7
  195. data/cmd/saveas +0 -7
  196. data/cmd/savep +0 -7
  197. data/cmd/saver +0 -24
  198. data/cmd/saverx +0 -31
  199. data/cmd/savex +0 -10
  200. data/cmd/savexm +0 -7
  201. data/cmd/sci +0 -9
  202. data/cmd/sdev +0 -11
  203. data/cmd/seekpt +0 -10
  204. data/cmd/seekpta +0 -7
  205. data/cmd/sep +0 -7
  206. data/cmd/setaf +0 -7
  207. data/cmd/setsw +0 -7
  208. data/cmd/sf +0 -7
  209. data/cmd/shellcmd +0 -7
  210. data/cmd/sign +0 -19
  211. data/cmd/sin +0 -10
  212. data/cmd/size +0 -7
  213. data/cmd/sizeq +0 -7
  214. data/cmd/sminus +0 -20
  215. data/cmd/splus +0 -20
  216. data/cmd/sqr +0 -8
  217. data/cmd/sqrt +0 -8
  218. data/cmd/sreg +0 -7
  219. data/cmd/sregq +0 -7
  220. data/cmd/stdivide +0 -22
  221. data/cmd/stmultiply +0 -22
  222. data/cmd/sto +0 -21
  223. data/cmd/stoflag +0 -13
  224. data/cmd/stop +0 -7
  225. data/cmd/stopsw +0 -7
  226. data/cmd/stplus +0 -22
  227. data/cmd/stsubtract +0 -22
  228. data/cmd/subtract +0 -9
  229. data/cmd/sw +0 -7
  230. data/cmd/swap +0 -7
  231. data/cmd/swpt +0 -7
  232. data/cmd/tan +0 -10
  233. data/cmd/tenx +0 -8
  234. data/cmd/time +0 -8
  235. data/cmd/tx +0 -7
  236. data/cmd/version +0 -7
  237. data/cmd/view +0 -7
  238. data/cmd/writefile +0 -12
  239. data/cmd/xeq +0 -21
  240. data/cmd/xeq0 +0 -7
  241. data/cmd/xeqnn +0 -9
  242. data/cmd/xeqy +0 -7
  243. data/cmd/xf +0 -20
  244. data/cmd/xgt0 +0 -7
  245. data/cmd/xgteq0 +0 -7
  246. data/cmd/xgteqnn +0 -9
  247. data/cmd/xgteqy +0 -7
  248. data/cmd/xgtnn +0 -9
  249. data/cmd/xgty +0 -7
  250. data/cmd/xlt0 +0 -7
  251. data/cmd/xlteq0 +0 -7
  252. data/cmd/xlteqnn +0 -9
  253. data/cmd/xlteqy +0 -7
  254. data/cmd/xltnn +0 -9
  255. data/cmd/xlty +0 -7
  256. data/cmd/xmexistq +0 -15
  257. data/cmd/xmfileq +0 -7
  258. data/cmd/xneq0 +0 -7
  259. data/cmd/xneqnn +0 -9
  260. data/cmd/xneqy +0 -7
  261. data/cmd/xnn +0 -21
  262. data/cmd/xtoa +0 -7
  263. data/cmd/xy +0 -7
  264. data/cmd/xyzalm +0 -7
  265. data/lib/_xrpn_version.rb +0 -5
  266. data/lib/bei.rb +0 -18
  267. data/lib/check.rb +0 -26
  268. data/lib/conditional.rb +0 -10
  269. data/lib/convert_base.rb +0 -8
  270. data/lib/debug_mode.rb +0 -124
  271. data/lib/dtparse.rb +0 -10
  272. data/lib/error.rb +0 -10
  273. data/lib/fact.rb +0 -7
  274. data/lib/getpt.rb +0 -7
  275. data/lib/help.rb +0 -12
  276. data/lib/hp_41.rb +0 -83
  277. data/lib/ind.rb +0 -21
  278. data/lib/load_xm.rb +0 -28
  279. data/lib/locate_prg.rb +0 -32
  280. data/lib/numeric.rb +0 -62
  281. data/lib/numformat.rb +0 -12
  282. data/lib/optparse.rb +0 -23
  283. data/lib/read_cmd.rb +0 -12
  284. data/lib/read_state.rb +0 -6
  285. data/lib/save_state.rb +0 -18
  286. data/lib/save_xm.rb +0 -5
  287. data/lib/setpt.rb +0 -5
  288. data/lib/string.rb +0 -28
  289. data/lib/theme_dark.rb +0 -10
  290. data/lib/theme_light.rb +0 -10
  291. data/lib/xrpn_class.rb +0 -34
data/lib/optparse.rb DELETED
@@ -1,23 +0,0 @@
1
- # Handle the command line options
2
- options = {}
3
- optparse = OptionParser.new do |opts|
4
- # Set a banner, displayed at the top of the help screen.
5
- opts.banner = "Usage: xrpn [options]"
6
-
7
- # Define the options, and what they do
8
- opts.on('-f', '--file program', 'Specify the file to process') { |f| $rfile = f }
9
- opts.on('-l', '--load program(s)', Array, 'File(s) to load, but not run') { |l| $lfile = l }
10
- opts.on('-s', '--state STATE', 'Load a State file') { |s| $sfile = s }
11
- opts.on('-c', '--check program', 'Program file to check for errors') { |c| check(c); exit }
12
- opts.on('-x', '--X X-value', 'Set initial value in the X register') { |x| @x = x.to_f }
13
- opts.on('-y', '--Y Y-value', 'Set initial value in the Y register') { |y| @y = y.to_f }
14
- opts.on('-z', '--Z Z-value', 'Set initial value in the Z register') { |z| @z = z.to_f }
15
- opts.on('-t', '--T T-value', 'Set initial value in the T register') { |t| @t = t.to_f }
16
- opts.on('-a', '--Alpha Alpha-string', 'Set initial string in Alpha') { |a| @a = a.to_s }
17
- opts.on('-h', 'Display SHORT help text') { puts opts; exit }
18
- opts.on('--help', 'Display LONG help text') { help; puts; puts opts; exit}
19
- opts.on('-v', '--version', 'Display the XRPN version number') { xrpn_version; exit }
20
- end
21
- optparse.parse!
22
-
23
- # vim:ft=ruby:
data/lib/read_cmd.rb DELETED
@@ -1,12 +0,0 @@
1
- def read_cmd
2
- $cmd = []
3
- Dir[Dir.home+"/.xrpn/cmd/*"].each do |file|
4
- load file
5
- l = IO.readlines(file)[1]
6
- c = l.sub(/\s*def (\S+).*/, '\1').chomp
7
- $cmd.push(c)
8
- end
9
- $cmd.sort!
10
- end
11
-
12
- # vim:ft=ruby:
data/lib/read_state.rb DELETED
@@ -1,6 +0,0 @@
1
- def read_state (fn = "conf")
2
- @p.flg["23"] = false
3
- load (Dir.home + "/.xrpn/" + fn)
4
- end
5
-
6
- # vim:ft=ruby:
data/lib/save_state.rb DELETED
@@ -1,18 +0,0 @@
1
- def save_state (fn = "conf")
2
- @p.flg["23"] = false
3
- cont = "@p.x = #{@p.x}\n"
4
- cont += "@p.y = #{@p.y}\n"
5
- cont += "@p.z = #{@p.z}\n"
6
- cont += "@p.t = #{@p.t}\n"
7
- cont += "@p.l = #{@p.l}\n"
8
- cont += "@p.a = \"#{@p.a}\"\n"
9
- cont += "@p.i = #{@p.i}\n"
10
- cont += "@p.s = #{@p.s}\n"
11
- cont += "@p.srg = #{@p.srg}\n"
12
- cont += "@p.reg = #{@p.reg}\n"
13
- cont += "@p.flg = #{@p.flg}\n"
14
- cont += "@p.prg = #{@p.prg}\n"
15
- File.write(Dir.home + "/.xrpn/" + fn, cont)
16
- end
17
-
18
- # vim:ft=ruby:
data/lib/save_xm.rb DELETED
@@ -1,5 +0,0 @@
1
- def save_xm
2
- File.write(@xmcont[0][0], @xmcont) if File.exist?(@xmcont[0][0])
3
- end
4
-
5
- # vim:ft=ruby:
data/lib/setpt.rb DELETED
@@ -1,5 +0,0 @@
1
- def setpt(r, c)
2
- @xmcont[0][3] = r - 1 + (0.001 * c).round(4)
3
- end
4
-
5
- # vim:ft=ruby:
data/lib/string.rb DELETED
@@ -1,28 +0,0 @@
1
- class String
2
-
3
- def color (color_code, bold=false)
4
- bold ? "\e[38;5;#{color_code};1m#{self}\e[0m" : "\e[38;5;#{color_code}m#{self}\e[0m"
5
- end
6
-
7
- def c_x(bold=false)
8
- color($colors["X"], bold)
9
- end
10
- def c_y(bold=false)
11
- color($colors["Y"], bold)
12
- end
13
- def c_z(bold=false)
14
- color($colors["Z"], bold)
15
- end
16
- def c_t(bold=false)
17
- color($colors["T"], bold)
18
- end
19
- def c_l(bold=false)
20
- color($colors["L"], bold)
21
- end
22
- def c_a(bold=false)
23
- color($colors["A"], bold)
24
- end
25
-
26
- end
27
-
28
- # vim:ft=ruby:
data/lib/theme_dark.rb DELETED
@@ -1,10 +0,0 @@
1
- $colors = {
2
- "X" => 255,
3
- "Y" => 246,
4
- "Z" => 243,
5
- "T" => 240,
6
- "L" => 130,
7
- "A" => 39
8
- }
9
-
10
- # vim:ft=ruby:
data/lib/theme_light.rb DELETED
@@ -1,10 +0,0 @@
1
- $colors = {
2
- "X" => 232,
3
- "Y" => 241,
4
- "Z" => 244,
5
- "T" => 247,
6
- "L" => 130,
7
- "A" => 39
8
- }
9
-
10
- # vim:ft=ruby:
data/lib/xrpn_class.rb DELETED
@@ -1,34 +0,0 @@
1
- # Define the basis for the RPN class
2
- class XRPN
3
- attr_accessor :nolift, :x, :y, :z, :t, :l, :a, :i, :s, :g, :deg, :srg, :reg, :flg, :clk24, :pg, :prg, :pc, :rtn, :xmfile, :xmcont
4
- def initialize(file)
5
- @nolift = false # Disable stacklift
6
- @x = 0.0 # X register
7
- @y = 0.0 # Y register
8
- @z = 0.0 # Z register
9
- @t = 0.0 # T register
10
- @l = 0.0 # Last X register
11
- @a = "" # Alpha register
12
- @i = 4 # Fix (and Sci/Eng) nu,ber of digiet after period
13
- @s = 9 # Threshold for when exponents kick in
14
- @g = 1 # Exponent grouping (set to 3 when ENG mode is set)
15
- @deg = "deg" # Degree mode (or "rad" for Radians or "grad" for 400°
16
- @srg = 11 # Statistics registers start
17
- @reg = {} # Registers are stored in a Hash
18
- @flg = {} # Flags are stored in a Hash
19
- @flg["28"] = true # Radix mark
20
- @flg["29"] = true # Digit separator mark
21
- @flg["31"] = false # Date format (MDY). "true" for DMY
22
- @flg["44"] = false # Continuous ON
23
- @clk24 = false # 24 hour time
24
- @pg = 0 # Active Page
25
- @prg = [] # Active Program
26
- @prg[0] = File.read(file).split("\n") if $rfile
27
- @pc = 0 # Active Program Counter (current step in the active program)
28
- @rtn = [] # Return stack
29
- @xmfile = "" # Current eXtended Memory file
30
- @xmcont = [["", "", 0, 0.0]]
31
- end
32
- end
33
-
34
- # vim:ft=ruby: