▼
Posts: 75
Threads: 11
Joined: Jan 2010
If you could layout this keyboard anyway you wished to for a RPN Graphing calculator, how would you?
Its 39 buttons in all.
Dimitri
▼
Posts: 1,092
Threads: 57
Joined: May 2007
I'd add another row of buttons for a start.
And possibly have the upper half buttons a smaller pitch to add another column as well.
Dave.
Posts: 1,322
Threads: 115
Joined: Jul 2005
Interesting question.
To get the kind of answers you want, we need to know 1)how many shift keys can there be 2)can functions be picked out by alpha, like the 41 series 3) if there will be a user keyboard option or if what we get is written in stone.
Two things i can say right now are that i really want you not to forget p<>r & r<>p and that putting programming functions on the primary (only?) keyboard of an alfa equiped calc (like the 41) is a waste of valuable prime real estate. Ex:All those X=whatever functions on the 41's shifted +,,x,/ functions would have been better used as time arithmatic. We do more math than programming.
▼
Posts: 75
Threads: 11
Joined: Jan 2010
Good point so my design considerations so far:
1) HP41 compatible
a) Programs written in HP41 format in a text document will run from SD card.
b) Programs will be accessible and used exactly like a HP41.
c) Talk software interface for the HPIL system and HP41 printer.
2) No on board programming for now.
3) Built in HP Pac's in system for ease of use.
4) One shifted function per key.
5) Will have menu functions as to not need too many special keys.
6) RS232 output and input available, built in command set with minimal additional added code in user programs (no advance programming needed) for robotic control etc
7) Gcode interpreter with output connected to RS232 for CNC hobby applications. Gcode files on the SD card.
8) Graphing functions and equation solving routines built in.
Dimitri
Edited: 25 Feb 2010, 10:33 p.m.
▼
Posts: 297
Threads: 25
Joined: Nov 2006
Similar in some ways to my version... except I have no use for graphics. I haven't yet come up with a way to bring out the
rs232 or SD interfaces, but that also isn't a priority at the
moment.
Take a look at the appendicies in this document:
http://www.systemyde.com/pdf/newt.pdf
And here's a photo of the circuit board:
http://www.systemyde.com/hp41/photo_2.jpg
Monte
▼
Posts: 75
Threads: 11
Joined: Jan 2010
Looks interesting I will admit I'll be cheating alittle, internally it will be more like a old computer from the 80s then a single chip calculator.
I will be using the Atmel AVR series with 4 diffrent MCU in the system, the processor (the calculator & SD card + any built in flash), the graphic output chip, the HPIL/RS232/FDD chip, and one to interface the keyboard on their own chips connected with a TWI/I2C network internally.
Dimitri
Posts: 764
Threads: 118
Joined: Aug 2007
(Long Message)
Dimitri, this is a long message but here it goes....
I think mine ended being a 28/48 approach but instead of RPL, it has keystroke programming:
KEYBOARD
SH390G
GRPH ( PRGM ) MATH (lambda) TEST (mu) STAT (sigma)
F1 F2 F3 F4 F5
ALOCK ADV ? APP (+) EQN $ XEQ &
ALPHA (LEFT) (UP) (DOWN) (RIGHT)
= A % B i C (angle) D
SHIFT x<>y R(DOWN) STO RCL
MODE D Sigma+ E Sigma F CLEAR G
ENTER CHS (+/) EXP (10^) Backspc
>HMS H SQRT I ^ P ROOT K ASIN L
 7 8 9 SIN
>H M x^2 N P>R O R>P P ACOS Q
+ 4 5 6 COS
1/x R x! S LN T e^x U ATAN Q
x 1 2 3 TAN
F<>D W pi X LOG Y 10^x Z OFF ESC
÷ 0 . R/S ON
a b/c
Legend:
SHIFT ALPHA
PRIMARY
Menus: (F1, F2, F3, F4, F5) Mulitpage menus loop with MORE
GRPH: f(x)=, PLOT, ANAL, TRACE, VIEW (here you can change the viewing window  and gives xmin, xmax, xscl, xstep, and similar for y, theta, r, u, n, n1 depending on graph mode)
GRPHANAL: VALUE, ROOT, SLOPE, EXTRM (Extrema), MORE; INTER (Intersect), SHADE, AREA, TEXT (Write on the Graph), MORE
PRGM: LIST, CREATE, CMD, DISP, LOOP
Programs and equations have 12character names. Up to 10 programs and equations can also be assigned to 09 for quick access.
PRGMList: List programs alphabetically, programs can be erased with highlighting it and hitting CLEAR, make a "quickprogram" by highlighting it and pressing a number key; hence XEQ 09 executes programs labled 09
PRGMCMD: LBL, GTO, RTN, BREAK, MORE; SF, CF, SF?, CF?, MORE
PRGMDISP: INPUT, MSG (Message), PAUSE, R/S, MORE; ShowSt (Show Stack), ShowG (Show Graph), ClrSt (Clear Stack), ClrG (Clear Graph), MORE
Message Command: Use ALOCK to insert quotes (" "), i.e. to display "HP 41C" in a program: SHIFT ALOCK HP ALPHA 4 ALPHA 1 C SHIFT ALOCK MSG (PSE or R/S)
PRGMLOOP: ISG, DSE, If, For, Do
PRGMLOOPIf: IF, THEN, ELSE, ENDIF
If Structure: IF y x (test) THEN (true) ELSE (false) ENDIF
PRGMLOOPFor: FOR, NEXT, STEP
For Structure #1: start end FOR var (cmds) NEXT
For Structure #2: start end FOR var (cmds) incr STEP
PRGMLOOPDo: DO, UNTIL, ENDO
Do Structure: DO (cmds) UNTIL y x (test) ENDO
MATH: Prob, Cmplx, Base, Num, HYP
MATHProb: nCr, nPr, Binom (Binomial CDF), Pois (Poisson CDF), MORE; NCDF (Normal Dist CDF), Ninv (Normal Inverse), CHI2CDF (Chi Squared CDF), CHI2INV (Chi Squared Inverse), MORE
MATHCmplx: ABS, ARG, REAL, IMAG, CONJ (Conjugate)
MATHBase: (Prefixes) d, b, h, o, MORE; (convert to) DEC, BIN, HEX, OCT, MORE
MATHNum: INTG, FRAC, INT÷, REM (Remainder/Mod), ROUND (Round y to nearest x)
TEST: x?y, x?0, AND, OR, NOT (First two gets you to <, <=, >, >=, MORE, =, ~= (not equal), MORE)
STAT: Means, Sums, Reg, x' (Predict x), y' (Predict y)
STATMeans: MEAN (returns ybar and xbar), STD (standard deviation for both y and x), POPD (population deviation for both y and x)
STATSums: SUM (Sy, Sx), SUMSQ (Sy^2, Sy^x), Sxy, n
STATReg: Eqn (lists equation on stack), Corr, BEST (finds the best correlation), LIN (Linear), MORE; LOG (Logarithm), POW (Power),EXPR (Exponential), INV (Inverse y = a + b/x), MORE; QUAD (Quadratic), CUBIC (Cubic), SIN (Sinusodial), LOGIS (Logistic), MORE
APP:
F1  MEM (Memory)
F2  TVM (Time Value of Money)
F3  RK4 (Differential Equation using 4th Order RungeKutta)
F4  CASH (Cash Flow: Net Present Value, IRR, Net Future Value, Net Utility Stream, MIRR)
F5  I/O (USB and/or Card Management)
ADV:
F1  Constants Library (or Formula Library)
F2  Conversions Library
F3  ZETA
F4  ERF (Error Function)
F5  MORE
F1  DATE+
F2  DAYS (Days between dates)
F3  DAYWK (Day of the Week, return a three letter code, i.e. "MON" for Monday)
F4  Matrix
F5  MORE
(** Date functions is a must for me)
ADVMatrix: Entry, Add a Row, Add a Column, Delete a Row, MORE; Delete a Column, INV, DET, EIGEN (Eigenvalues), MORE; Row+, Row*, Row+*, IDEN (Identity), MORE
EQN: List, Create, CMD, Poly (Polynomials up to 6th order), Simultaenous (up to 6th order)
EQNList: List programs alphabetically, programs can be erased with highlighting it and hitting CLEAR, make a "quickequation" by highlighting it and pressing a number key; hence RCL 09 recalls equaitons 09
EQNCMD: EVAL, SOLVE, Sum, Integral, Derivative
MODE: RUN, BASE, ANGLE (Deg, Rad, Grad), GRAPH (Function, Parametric, Polar, Sequence), DISP (All, Fix, Sci, Eng)
F<>D: Toggle between Decimal and Fraction display mode.
In fraction display mode, the following are displayed: fractions, exact square roots, and pi (I guess this is EXACT mode)
Enter fractions like this: whole number, decimal point, numerator, decimal point, denominator (like the HP 35s)
In decimal display mode: everything is a numerical approximation
Memory Capacity:
(at least) 100,000 program steps
(at least) 15,000 bytes for statistics, equations, and matrices
Edited: 26 Feb 2010, 11:24 a.m.
▼
Posts: 248
Threads: 5
Joined: Feb 2008
Interestingly, in your layout the SIN, COS and TAN keys are in the same column while on almost all past or existing calculators they are on the same line ... the Sinclair Scientific being one of the exceptions.
Posts: 75
Threads: 11
Joined: Jan 2010
Long but good, I was honestly going to skip Stat S+/S (picture the Greek letter) mainly because I honestly don't know it, but will be on the later prototypes. Yah I am in college taking calculus courses but was never taught statistics.
You think basic high level programming would be good?
Really its going to be a interpreter on board, so I have been worried about it due to the available on board RAM already dealing with 30 floating point numbers (X, Y, Z, T, U and memory number Registers 1 to 25) plus doing math with them. Although it wouldn't be too bad since it will process actions in small steps anyways.
Dimitri
▼
Posts: 764
Threads: 118
Joined: Aug 2007
Programming is a favorite feature of mine since knowing even the basics of it  you can the calculator do almost anything. (and I really don't consider myself of having more than working knowledge)
▼
Posts: 75
Threads: 11
Joined: Jan 2010
Quote: Programming is a favorite feature of mine since knowing even the basics of it  you can the calculator do almost anything.
Looking into Flash Chip based onboard programming now. Just cause of you ;)
Dimitri
▼
Posts: 764
Threads: 118
Joined: Aug 2007
:) Dimitri.
I hope things are going well so far with the project.
Posts: 4,587
Threads: 105
Joined: Jul 2005
Nice to see an independent layout. Some questions and comments:
 What's ROOT? Does SHIFT 9 calculate the xth root of y, since SHIFT 8 seems to compute y^x?
 There's a mix of horizontal and vertical arrangements of related functions, e.g. SQRT and x^2 versus LN and e^x. For sake of consistency, either one would be prefered. Most people read from left to right d;)
 The arrangement of arithmetic operators goes far back in history. Personally, I'd prefer the sequence +  x / going up with increasing complexity. Your mileage varies obviously d:)
 I doubt trigs are used more frequently than a SQRT or LN / e^x. Apparently, you had to put SIN, COS, and TAN on primary since you feature a single SHIFT only.
 Nice and pretty complete menu system.
 Very nice programming set of functions. Assume you will display these structures using the big screen.
 100.000 lines of code definitively require I/O. Thanks for taking this into account.
 Why is "=" on the keyboard? You don't propose an algebraic mode, do you?
Thanks for sharing your thoughts.
Walter
▼
Posts: 764
Threads: 118
Joined: Aug 2007
Walter,
ROOT: The universal root function (y^(1/x)). I don't know how to type the radical sign in text.
Regarding the arrangement: sounds good going from right to left. I take it you are not a fan of the trig functions going downward. :) My first draft of fitting the functions onto the keyboard.
Arrangement of arithmetic operators: I was going for retro (HP 41C).
I would like to see LN and LOG as primary functions, though I was working with keyboard of 39 keys. I could rearrange the keys so that scientific functions are primary and menus are shifted.
Thank you about the menu system, I appreciate the compliment, Walter.
Currently I would have the I/O set in the APP menu (APP  F5).
Maybe the command set would be:
SSD (to SD), RSD (from SD), SCPU (send to computer), RCPU (receive from computer), SCREEN (send screen shot)
(Am I missing anything?)
No, this calculator does not have the algebriac mode. The "=" is for the Solver. Currently, I have the EQN work like the equation feature of the HP35s.
This keyboard is definately worth several revisions.
:)
Edited: 28 Feb 2010, 4:01 p.m.
▼
Posts: 764
Threads: 118
Joined: Aug 2007
(Long Message)
My second take at it:
Changes:
* Moved the arithmetic keys to the left side
* Horizontal arrangements of related functions
* Added the I/O Menu
* << = Backspace
* GREEK = Greek Letters
* INT'L = International Characters
KEYBOARD
SH390G [Version 2]
GRPH ( PRGM ) MATH GREEK TEST INT'L STAT &
F1 F2 F3 F4 F5
ALOCK ADV ? APP (+) EQN $ XEQ (theta)
ALPHA (left) (up) (down) (right)
= A % B i C (angle) D
SHIFT x<>y ROLLD STO RCL
MODE D ASIN E ACOS F ATAN G
ENTER SIN COS TAN
CLEAR H x^2 I SQRT J y^x K y^(1/x) L
<< 7 8 9 /
Sigma+ M >H N >HMS O P>R P R>P Q
EE 4 5 6 x
Sigma R 1/x S x! T e^x U LN V
+/(CHS) 1 2 3 
OFF ESC pi W F<>D X 10^x Y LOG Z
ON 0 . R/S +
a b/c
Legend:
SHIFT ALPHA
PRIMARY
Menus: (F1, F2, F3, F4, F5) Mulitpage menus loop with MORE
GRPH: f(x)=, PLOT, ANAL, TRACE, TABLE
GRPHANAL: VALUE, ROOT, SLOPE, EXTRM (Extrema), MORE; INTER (Intersect), SHADE, AREA, TEXT (Write on the Graph), MORE
PRGM: LIST, CREATE, CMD, DISP, LOOP
Programs and equations have 12character names. Up to 10 programs and equations can also be assigned to 09 for quick access.
PRGMList: List programs alphabetically, programs can be erased with highlighting it and hitting CLEAR, make a "quickprogram" by highlighting it and pressing a number key;
hence XEQ 09 executes programs labled 09
PRGMCMD: LBL, GTO, RTN, BREAK, MORE; SF, CF, SF?, CF?, MORE
PRGMDISP: INPUT, MSG (Message), PAUSE, R/S, MORE; ShowSt (Show Stack), ShowG (Show Graph), ClrSt (Clear Stack), ClrG (Clear Graph), MORE
Message Command: Use ALOCK to insert quotes (" "), i.e. to display "HP 41C" in a program: SHIFT ALOCK HP ALPHA 4 ALPHA 1 C SHIFT ALOCK MSG (PSE or R/S)
PRGMLOOP: ISG, DSE, If, For, Do
PRGMLOOPIf: IF, THEN, ELSE, ENDIF
If Structure: IF y x (test) THEN (true) ELSE (false) ENDIF
PRGMLOOPFor: FOR, NEXT, STEP
For Structure #1: start end FOR var (cmds) NEXT
For Structure #2: start end FOR var (cmds) incr STEP
PRGMLOOPDo: DO, UNTIL, ENDO
Do Structure: DO (cmds) UNTIL y x (test) ENDO
MATH: Prob, Cmplx, Base, Num, HYP
MATHProb: nCr, nPr, Binom (Binomial CDF), Pois (Poisson CDF), MORE; NCDF (Normal Dist CDF), Ninv (Normal Inverse), CHI2CDF (Chi Squared CDF), CHI2INV (Chi Squared
Inverse), MORE
MATHCmplx: ABS, ARG, REAL, IMAG, CONJ (Conjugate)
MATHBase: (Prefixes) d, b, h, o, MORE; (convert to) DEC, BIN, HEX, OCT, MORE
MATHNum: INTG, FRAC, INT/, REM (Remainder/Mod), ROUND (Round y to nearest x)
TEST: x?y, x?0, AND, OR, NOT (First two gets you to <, <=, >, >=, MORE, =, ~= (not equal), MORE)
STAT: Means, Sums, Reg, x' (Predict x), y' (Predict y)
STATMeans: MEAN (returns ybar and xbar), STD (standard deviation for both y and x), POPD (population deviation for both y and x)
STATSums: SUM (Sy, Sx), SUMSQ (Sy^2, Sy^x), Sxy, n
STATReg: Eqn (lists equation on stack), Corr, BEST (finds the best correlation), LIN (Linear), MORE; LOG (Logarithm), POW (Power),EXPR (Exponential), INV (Inverse y = a + b/x),
MORE; QUAD (Quadratic), CUBIC (Cubic), SIN (Sinusodial), LOGIS (Logistic), MORE
APP:
F1  MEM (Memory): List (you can erase single items), Reset (reset the entire calculator)
F2  TVM (Time Value of Money)
F3  RK4 (Differential Equation using 4th Order RungeKutta)
F4  CASH (Cash Flow: Net Present Value, IRR, Net Future Value, Net Utility Stream, MIRR)
F5  I/O: SDD (send to SD), RSD (receive from SD), SCPU (send to computer), RCPU (receive from computer), SCREEN (screen shot)
ADV:
F1  Constants Library (or Formula Library)
F2  Conversions Library
F3  ZETA
F4  ERF (Error Function)
F5  Matrix
ADVMatrix: Entry, Add a Row, Add a Column, Delete a Row, MORE; Delete a Column, INV, DET, EIGEN (Eigenvalues), MORE; Row+, Row*, Row+*, IDEN (Identity), MORE
EQN: List, Create, CMD, Poly (Polynomials up to 6th order), Simultaenous (up to 6th order)
EQNList: List programs alphabetically, programs can be erased with highlighting it and hitting CLEAR, make a "quickequation" by highlighting it and pressing a number key; hence
RCL 09 recalls equaitons 09
EQNCMD: EVAL, SOLVE, Sum, Integral, Derivative
MODE: RUN, BASE, ANGLE (Deg, Rad, Grad), GRAPH (Function, Parametric, Polar, Sequence), DISP (All, Fix, Sci, Eng)
F<>D: Toggle between Decimal and Fraction display mode.
In fraction display mode, the following are displayed: fractions, exact square roots, and pi (I guess this is EXACT mode)
Enter fractions like this: whole number, decimal point, numerator, decimal point, denominator (like the HP 35s)
In decimal display mode: everything is a numerical approximation
Memory Capacity:
(at least) 100,000 program steps
(at least) 15,000 bytes for statistics, equations, and matrices
Edited: 28 Feb 2010, 9:01 p.m.
