A simple framework that implements a simple programmable RPN calculator. The keyboard mapping is still based on a 20 key 4-banger I designed a while back. The output is based on the 20b's screen.
The framework is designed to be easily expanded to include extra functions.
The current keyboard layout is shown below. Some things are a bit non-intutive (GSB . is GOTO; GSB 0 is RTN) but this part of the code will need to be completely revised once a proper layout for the 20b has been designed.
Character to keyboard mapping:
enter v c backspace 7 8 9 / q = quit 4 5 6 * t = trace mode 1 2 3 - f = status 0 . space + ^L = redraw screen
Non-shifted keys
ENTER^ X<>Y CHS Clx 7 8 9 / 4 5 6 * 1 2 3 - 0 . shift +
Shifted keys:
LASTx Rv EEX CLREG/CLPRG n! sqrt 1/x PGRM ln e^x y^x SST STO INTG TEST R/S RCL PI shift GSB