xrpn 1.1.3 → 1.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/xrpn +10 -10
- data/lib/xrpn.rb +2 -0
- data/xrpn.gemspec +2 -3
- metadata +3 -302
- data/cmd/abs +0 -7
- data/cmd/acos +0 -10
- data/cmd/adate +0 -12
- data/cmd/adateiso +0 -13
- data/cmd/add +0 -9
- data/cmd/adv +0 -7
- data/cmd/agsub +0 -8
- data/cmd/aleng +0 -8
- data/cmd/almcat +0 -7
- data/cmd/almnow +0 -7
- data/cmd/anum +0 -10
- data/cmd/aoff +0 -7
- data/cmd/aon +0 -7
- data/cmd/appchr +0 -13
- data/cmd/apprec +0 -13
- data/cmd/arcl +0 -22
- data/cmd/arcli +0 -7
- data/cmd/arclrec +0 -30
- data/cmd/arot +0 -13
- data/cmd/ashf +0 -7
- data/cmd/asin +0 -10
- data/cmd/asroom +0 -7
- data/cmd/asto +0 -21
- data/cmd/asub +0 -8
- data/cmd/atan +0 -10
- data/cmd/atime +0 -26
- data/cmd/atime24 +0 -21
- data/cmd/atox +0 -9
- data/cmd/aview +0 -7
- data/cmd/aviewc +0 -7
- data/cmd/beep +0 -7
- data/cmd/bindec +0 -8
- data/cmd/cat +0 -26
- data/cmd/cf +0 -7
- data/cmd/chs +0 -7
- data/cmd/cla +0 -7
- data/cmd/clalma +0 -7
- data/cmd/clalmx +0 -7
- data/cmd/cld +0 -6
- data/cmd/clear +0 -7
- data/cmd/clfl +0 -13
- data/cmd/clk12 +0 -7
- data/cmd/clk24 +0 -7
- data/cmd/clkeys +0 -7
- data/cmd/clock +0 -7
- data/cmd/clp +0 -8
- data/cmd/clralms +0 -7
- data/cmd/clrg +0 -7
- data/cmd/clrgx +0 -12
- data/cmd/cls +0 -12
- data/cmd/clst +0 -10
- data/cmd/clx +0 -8
- data/cmd/cmdadd +0 -7
- data/cmd/cmddel +0 -7
- data/cmd/correct +0 -7
- data/cmd/cos +0 -10
- data/cmd/crflas +0 -9
- data/cmd/crfld +0 -9
- data/cmd/cube +0 -8
- data/cmd/d_r +0 -8
- data/cmd/date +0 -8
- data/cmd/dateplus +0 -12
- data/cmd/ddate +0 -11
- data/cmd/dec +0 -7
- data/cmd/decbin +0 -8
- data/cmd/dechex +0 -8
- data/cmd/decoct +0 -8
- data/cmd/deg +0 -7
- data/cmd/degq +0 -7
- data/cmd/delchr +0 -14
- data/cmd/delrec +0 -12
- data/cmd/divide +0 -9
- data/cmd/dmy +0 -7
- data/cmd/dot +0 -7
- data/cmd/dow +0 -9
- data/cmd/drop +0 -7
- data/cmd/dropy +0 -7
- data/cmd/dse +0 -40
- data/cmd/ed +0 -7
- data/cmd/emdir +0 -7
- data/cmd/emdirx +0 -14
- data/cmd/emroom +0 -7
- data/cmd/end +0 -9
- data/cmd/eng +0 -9
- data/cmd/enter +0 -8
- data/cmd/exp +0 -9
- data/cmd/expx1 +0 -9
- data/cmd/fact +0 -9
- data/cmd/fc +0 -7
- data/cmd/fcc +0 -8
- data/cmd/fcs +0 -8
- data/cmd/fix +0 -9
- data/cmd/fixq +0 -7
- data/cmd/flsize +0 -7
- data/cmd/frc +0 -8
- data/cmd/fs +0 -7
- data/cmd/fsc +0 -8
- data/cmd/fss +0 -8
- data/cmd/geir +0 -11
- data/cmd/getas +0 -7
- data/cmd/getfile +0 -12
- data/cmd/getfilea +0 -11
- data/cmd/getkey +0 -9
- data/cmd/getkeyx +0 -10
- data/cmd/getp +0 -13
- data/cmd/getr +0 -13
- data/cmd/getrec +0 -8
- data/cmd/getrx +0 -17
- data/cmd/getsub +0 -7
- data/cmd/getweb +0 -12
- data/cmd/getx +0 -12
- data/cmd/grad +0 -7
- data/cmd/gsb +0 -7
- data/cmd/gto +0 -23
- data/cmd/help +0 -14
- data/cmd/hexdec +0 -8
- data/cmd/hms +0 -12
- data/cmd/hmsminus +0 -14
- data/cmd/hmsplus +0 -13
- data/cmd/hr +0 -11
- data/cmd/inschr +0 -14
- data/cmd/insrec +0 -12
- data/cmd/int +0 -8
- data/cmd/invf +0 -7
- data/cmd/isg +0 -40
- data/cmd/lastx +0 -8
- data/cmd/lbl +0 -6
- data/cmd/lift +0 -8
- data/cmd/ln +0 -8
- data/cmd/ln1x +0 -8
- data/cmd/log +0 -8
- data/cmd/mdy +0 -7
- data/cmd/mean +0 -11
- data/cmd/mod +0 -13
- data/cmd/multiply +0 -9
- data/cmd/oct +0 -7
- data/cmd/octdec +0 -8
- data/cmd/off +0 -8
- data/cmd/on +0 -7
- data/cmd/p_r +0 -13
- data/cmd/pack +0 -7
- data/cmd/page +0 -13
- data/cmd/pagedel +0 -8
- data/cmd/pageq +0 -7
- data/cmd/pageswap +0 -8
- data/cmd/pasn +0 -7
- data/cmd/pcat +0 -14
- data/cmd/pclps +0 -12
- data/cmd/percent +0 -9
- data/cmd/percentch +0 -9
- data/cmd/pi +0 -8
- data/cmd/posa +0 -23
- data/cmd/posfl +0 -26
- data/cmd/pow +0 -9
- data/cmd/pprg +0 -27
- data/cmd/pprgx +0 -33
- data/cmd/pra +0 -7
- data/cmd/prflags +0 -8
- data/cmd/prompt +0 -8
- data/cmd/prp +0 -7
- data/cmd/prregs +0 -8
- data/cmd/prstk +0 -10
- data/cmd/prx +0 -7
- data/cmd/prxm +0 -21
- data/cmd/pse +0 -7
- data/cmd/psize +0 -7
- data/cmd/purfl +0 -14
- data/cmd/r_d +0 -8
- data/cmd/r_p +0 -18
- data/cmd/rad +0 -7
- data/cmd/rand +0 -10
- data/cmd/rcl +0 -23
- data/cmd/rclaf +0 -7
- data/cmd/rclflag +0 -16
- data/cmd/rclpt +0 -8
- data/cmd/rclpta +0 -16
- data/cmd/rclsw +0 -7
- data/cmd/rdn +0 -7
- data/cmd/recip +0 -8
- data/cmd/regmove +0 -18
- data/cmd/regswap +0 -19
- data/cmd/reload +0 -7
- data/cmd/reszfl +0 -7
- data/cmd/rnd +0 -8
- data/cmd/root +0 -9
- data/cmd/rtn +0 -12
- data/cmd/rubycmd +0 -7
- data/cmd/runsw +0 -7
- data/cmd/rup +0 -7
- data/cmd/saveas +0 -7
- data/cmd/savep +0 -7
- data/cmd/saver +0 -24
- data/cmd/saverx +0 -31
- data/cmd/savex +0 -10
- data/cmd/savexm +0 -7
- data/cmd/sci +0 -9
- data/cmd/sdev +0 -11
- data/cmd/seekpt +0 -10
- data/cmd/seekpta +0 -7
- data/cmd/sep +0 -7
- data/cmd/setaf +0 -7
- data/cmd/setsw +0 -7
- data/cmd/sf +0 -7
- data/cmd/shellcmd +0 -7
- data/cmd/sign +0 -19
- data/cmd/sin +0 -10
- data/cmd/size +0 -7
- data/cmd/sizeq +0 -7
- data/cmd/sminus +0 -20
- data/cmd/splus +0 -20
- data/cmd/sqr +0 -8
- data/cmd/sqrt +0 -8
- data/cmd/sreg +0 -7
- data/cmd/sregq +0 -7
- data/cmd/stdivide +0 -22
- data/cmd/stmultiply +0 -22
- data/cmd/sto +0 -21
- data/cmd/stoflag +0 -13
- data/cmd/stop +0 -7
- data/cmd/stopsw +0 -7
- data/cmd/stplus +0 -22
- data/cmd/stsubtract +0 -22
- data/cmd/subtract +0 -9
- data/cmd/sw +0 -7
- data/cmd/swap +0 -7
- data/cmd/swpt +0 -7
- data/cmd/tan +0 -10
- data/cmd/tenx +0 -8
- data/cmd/time +0 -8
- data/cmd/tx +0 -7
- data/cmd/version +0 -7
- data/cmd/view +0 -7
- data/cmd/writefile +0 -12
- data/cmd/xeq +0 -21
- data/cmd/xeq0 +0 -7
- data/cmd/xeqnn +0 -9
- data/cmd/xeqy +0 -7
- data/cmd/xf +0 -20
- data/cmd/xgt0 +0 -7
- data/cmd/xgteq0 +0 -7
- data/cmd/xgteqnn +0 -9
- data/cmd/xgteqy +0 -7
- data/cmd/xgtnn +0 -9
- data/cmd/xgty +0 -7
- data/cmd/xlt0 +0 -7
- data/cmd/xlteq0 +0 -7
- data/cmd/xlteqnn +0 -9
- data/cmd/xlteqy +0 -7
- data/cmd/xltnn +0 -9
- data/cmd/xlty +0 -7
- data/cmd/xmexistq +0 -15
- data/cmd/xmfileq +0 -7
- data/cmd/xneq0 +0 -7
- data/cmd/xneqnn +0 -9
- data/cmd/xneqy +0 -7
- data/cmd/xnn +0 -21
- data/cmd/xtoa +0 -7
- data/cmd/xy +0 -7
- data/cmd/xyzalm +0 -7
- data/lib/_xrpn_version.rb +0 -5
- data/lib/bei.rb +0 -18
- data/lib/check.rb +0 -26
- data/lib/conditional.rb +0 -10
- data/lib/convert_base.rb +0 -8
- data/lib/debug_mode.rb +0 -124
- data/lib/dtparse.rb +0 -10
- data/lib/error.rb +0 -10
- data/lib/fact.rb +0 -7
- data/lib/getpt.rb +0 -7
- data/lib/help.rb +0 -12
- data/lib/hp_41.rb +0 -83
- data/lib/ind.rb +0 -21
- data/lib/load_xm.rb +0 -28
- data/lib/locate_prg.rb +0 -32
- data/lib/numeric.rb +0 -62
- data/lib/numformat.rb +0 -12
- data/lib/optparse.rb +0 -23
- data/lib/read_cmd.rb +0 -12
- data/lib/read_state.rb +0 -6
- data/lib/save_state.rb +0 -18
- data/lib/save_xm.rb +0 -5
- data/lib/setpt.rb +0 -5
- data/lib/string.rb +0 -28
- data/lib/theme_dark.rb +0 -10
- data/lib/theme_light.rb +0 -10
- data/lib/xrpn_class.rb +0 -34
data/cmd/emdirx
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def emdirx
|
3
|
-
fl = Dir[Dir.home+"/.xrpn/data/*"][@x.to_i - 1]
|
4
|
-
f = fl.sub(/.*\/(.*)\...$/, '\1')
|
5
|
-
t = fl.sub(/.*\.(..)$/, '\1').upcase
|
6
|
-
l = File.size(fl) / 7
|
7
|
-
puts "#{f.ljust(12)} #{t} #{l.to_s.rjust(4)}"
|
8
|
-
@a = f
|
9
|
-
lift
|
10
|
-
@x = t
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
# vim:ft=ruby:
|
data/cmd/emroom
DELETED
data/cmd/end
DELETED
data/cmd/eng
DELETED
data/cmd/enter
DELETED
data/cmd/exp
DELETED
data/cmd/expx1
DELETED
data/cmd/fact
DELETED
data/cmd/fc
DELETED
data/cmd/fcc
DELETED
data/cmd/fcs
DELETED
data/cmd/fix
DELETED
data/cmd/fixq
DELETED
data/cmd/flsize
DELETED
data/cmd/frc
DELETED
data/cmd/fs
DELETED
data/cmd/fsc
DELETED
data/cmd/fss
DELETED
data/cmd/geir
DELETED
data/cmd/getas
DELETED
data/cmd/getfile
DELETED
data/cmd/getfilea
DELETED
data/cmd/getkey
DELETED
data/cmd/getkeyx
DELETED
data/cmd/getp
DELETED
data/cmd/getr
DELETED
data/cmd/getrec
DELETED
data/cmd/getrx
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def getrx
|
3
|
-
b = @x.to_i
|
4
|
-
e = (@x.frc * 1000).to_i
|
5
|
-
i = -1
|
6
|
-
@xmcont.each do |r|
|
7
|
-
i += 1
|
8
|
-
next if i == 0
|
9
|
-
next if i < (b - 1)
|
10
|
-
return if i == e
|
11
|
-
dest = "%02d" % (i - 1)
|
12
|
-
@reg[dest] = r
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
# vim:ft=ruby:
|
data/cmd/getsub
DELETED
data/cmd/getweb
DELETED
data/cmd/getx
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def getx
|
3
|
-
# No reason to not allow ascii files to be read into regs
|
4
|
-
lift
|
5
|
-
@x = @xmcont[@xmcont[0][3] + 1]
|
6
|
-
@xmcont[0][3] += 1
|
7
|
-
@xmcont[0][3] = @xmcont.length.to_f - 2 if @xmcont[0][3] > @xmcont.length - 2
|
8
|
-
save_xm
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
# vim:ft=ruby:
|
data/cmd/grad
DELETED
data/cmd/gsb
DELETED
data/cmd/gto
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def gto (l)
|
3
|
-
if l.match(/^\./)
|
4
|
-
@pc = l.sub(/^\./, "").to_i - 1
|
5
|
-
return
|
6
|
-
end
|
7
|
-
page, pos = locate_prg (l)
|
8
|
-
if pos == nil
|
9
|
-
if l.match(/".*"/)
|
10
|
-
return "Error: No such global label: #{l}"
|
11
|
-
else
|
12
|
-
return "Error: No such label: #{l}"
|
13
|
-
end
|
14
|
-
else
|
15
|
-
if @page != @pg
|
16
|
-
@pg = page
|
17
|
-
end
|
18
|
-
@pc = pos
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
# vim:ft=ruby:
|
data/cmd/help
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def help
|
3
|
-
puts
|
4
|
-
puts "XRPN is a stack-based programming language. It uses Reverse Polish Notation for calculations."
|
5
|
-
puts "The language is a superset of FOCAL, implementing the full set of HP-41CX calculator commands."
|
6
|
-
puts "XRPN is on-the-fly extensible. Language functions can be upgraded or implemented while programs are running."
|
7
|
-
puts "It runs programs in text files or manually in debug mode (if no text file is supplied or when a program stops)"
|
8
|
-
puts "XRPN implements indirect adressing, self-modification and features well beyond the FOCAL language."
|
9
|
-
puts "For detailed information, visit the GitHub page: https://github.com/isene/xrpn"
|
10
|
-
puts
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
# vim:ft=ruby:
|
data/cmd/hexdec
DELETED
data/cmd/hms
DELETED
data/cmd/hmsminus
DELETED
data/cmd/hmsplus
DELETED
data/cmd/hr
DELETED
data/cmd/inschr
DELETED
data/cmd/insrec
DELETED
data/cmd/int
DELETED
data/cmd/invf
DELETED
data/cmd/isg
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
class XRPN
|
2
|
-
def isg (r)
|
3
|
-
case r.downcase
|
4
|
-
when "x"
|
5
|
-
c = @x
|
6
|
-
when "y"
|
7
|
-
c = @y
|
8
|
-
when "z"
|
9
|
-
c = @z
|
10
|
-
when "t"
|
11
|
-
c = @t
|
12
|
-
when "l"
|
13
|
-
c = @l
|
14
|
-
else
|
15
|
-
c = @reg[r]
|
16
|
-
end
|
17
|
-
b, e, i = x2bei(c)
|
18
|
-
i2 = i
|
19
|
-
i2 = 1 if i2 == 0
|
20
|
-
b -= i2
|
21
|
-
@pc += 1 if b > e
|
22
|
-
c = bei2x(b, e, i)
|
23
|
-
case r.downcase
|
24
|
-
when "x"
|
25
|
-
@x = c
|
26
|
-
when "y"
|
27
|
-
@y = c
|
28
|
-
when "z"
|
29
|
-
@z = c
|
30
|
-
when "t"
|
31
|
-
@t = c
|
32
|
-
when "l"
|
33
|
-
@l = c
|
34
|
-
else
|
35
|
-
@reg[r] = c
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
# vim:ft=ruby:
|
data/cmd/lastx
DELETED
data/cmd/lbl
DELETED
data/cmd/lift
DELETED
data/cmd/ln
DELETED
data/cmd/ln1x
DELETED
data/cmd/log
DELETED
data/cmd/mdy
DELETED
data/cmd/mean
DELETED
data/cmd/mod
DELETED
data/cmd/multiply
DELETED