2014-02-11 11:26:28 +01:00
|
|
|
========================================================================
|
|
|
|
rpn28s Project Overview
|
|
|
|
========================================================================
|
|
|
|
|
|
|
|
This project plans to create a clone of HP-28S calculator language,
|
|
|
|
including at least stack, store, branch, test, trig and logs commands.
|
|
|
|
|
2014-09-18 14:12:57 +02:00
|
|
|
Following objects are managed: scalars, symbols
|
2014-02-11 11:26:28 +01:00
|
|
|
|
2014-09-04 17:27:40 +02:00
|
|
|
Notes:
|
2014-09-18 14:12:57 +02:00
|
|
|
- Under Linux x86_64, floating representation is 128-bit (quadruple
|
|
|
|
precision format). Thus precision (49 digits) is much better than
|
|
|
|
HP28S.
|
2014-02-11 11:26:28 +01:00
|
|
|
|
2014-02-12 13:52:01 +01:00
|
|
|
========================================================================
|
2014-08-12 11:42:04 +02:00
|
|
|
Here is a list of HP28s reserved words.
|
|
|
|
Some new commands are added. They are tagged with (+).
|
|
|
|
|
|
|
|
Already implemented commands are tagged with (*).
|
2014-02-12 13:52:01 +01:00
|
|
|
|
2014-09-05 09:49:39 +02:00
|
|
|
GENERAL (some are 'CURSOR' commands)
|
|
|
|
verbose(*)(+), std(*), fix(*), sci(*)
|
2014-02-12 13:52:01 +01:00
|
|
|
|
|
|
|
STACK
|
|
|
|
drop(*), swap(*), roll, dup(*), over, dup2(*), drop2(*), rot(*),
|
|
|
|
list->, rolld, pick(*), dupn, dropn, depth(*), ->list
|
|
|
|
|
|
|
|
STORE
|
|
|
|
sto(*), rcl(*), purge(*), sto+, sto-, sto*, sto/, sneg, sinv, sconj,
|
|
|
|
erase(*)(+), vars(*)(+)
|
|
|
|
|
|
|
|
MEMORY
|
|
|
|
mem, menu, order, path, home, crdir, vars, clusr
|
|
|
|
|
|
|
|
ALGEBRA
|
|
|
|
neg(*)(+), colct, expan, size, form, obsub, exsub, taylr, isol, quad,
|
|
|
|
show, obget, exget
|
|
|
|
|
|
|
|
STAT
|
|
|
|
∑dat, ∑par, ∑+, ∑-, n∑, cl∑, sto∑, rcl∑, tot, mean, sdev, var, max∑,
|
|
|
|
min∑, col∑, corr, cov, lr, predev, utpc, utpf, utpn, utpt, comb, perm
|
|
|
|
|
|
|
|
PRINT
|
|
|
|
pr1, prst, prvar, prlcd, cr, trac, prstc, prusr, prmd
|
|
|
|
|
|
|
|
CONTRL
|
|
|
|
sst, halt, abort, kill, wait, key, bepp, cllcd, disp, clmf, errn,
|
|
|
|
errm
|
|
|
|
|
|
|
|
BRANCH
|
|
|
|
if(*), iferr, then(*), else(*), end(*), start(*), for(*), next(*),
|
|
|
|
step(*), ift, ifte, do, until, end, while, repeat, end
|
|
|
|
|
|
|
|
TEST
|
|
|
|
!=(*), >(*), >=(*), <(*), <=(*), sf, cf, fs?, fc?, fs?c, fc?c, and, or,
|
|
|
|
xor, not, same, ==(*), stof, rclf, type
|
|
|
|
|
|
|
|
CATALOG
|
|
|
|
next, prev, scan, use, fetch, quit
|
|
|
|
|
|
|
|
UNITS
|
|
|
|
convert
|
|
|
|
|
2014-09-05 09:49:39 +02:00
|
|
|
CURSOR (some of these functions can be found in GENERAL)
|
|
|
|
ins, del, ← → ↑ ↓, std, fix, sci, eng, deg, rad, cmd, undo, last, ml,
|
2014-02-12 13:52:01 +01:00
|
|
|
rdx, prmd
|
|
|
|
|
|
|
|
TRIG
|
|
|
|
pi(*)(+), sin(*), asin(*), cos(*), acos(*), tan(*), atan(*), p→r, r→p,
|
|
|
|
r→c, c→r, arg, →hms, hms→, hms+, hms-, (*)d→r, (*)r→d
|
|
|
|
|
|
|
|
LOGS
|
|
|
|
log(*), alog(*), ln(*), exp(*), lnp1, expm, sinh(*), asinh(*), cosh(*),
|
|
|
|
acosh(*), tanh(*), atanh(*)
|
|
|
|
|
|
|
|
SOLV
|
|
|
|
steq, rceq, isol, quad, show, root,
|
|
|
|
|
|
|
|
PLOT
|
|
|
|
ppar, steq, rceq, pmin, pmax, indep, draw, res, axes, centr, *w, *h,
|
|
|
|
sto∑, rcl∑, col∑, scl∑, drw∑, cllcd, digtiz
|
|
|
|
|
|
|
|
CUSTOM
|
|
|
|
menu, custom
|
|
|
|
|
2014-02-11 14:33:13 +01:00
|
|
|
========================================================================
|
2014-02-11 11:26:28 +01:00
|
|
|
Other standard files:
|
2014-02-11 14:33:13 +01:00
|
|
|
README
|
|
|
|
TODO
|
2014-02-11 11:26:28 +01:00
|
|
|
|
2014-02-11 14:33:13 +01:00
|
|
|
========================================================================
|
2014-02-11 11:26:28 +01:00
|
|
|
Other notes:
|
|
|
|
|
2014-02-11 14:33:13 +01:00
|
|
|
========================================================================
|