Post Reply 
RPN-1250
09-27-2015, 06:17 PM
Post: #1
RPN-1250
Following the repurposing of the TI-1200 into the RPN-1200 RPN scientific calculator, I wanted to take the challenge of making a programmable version by repurposing the TI-1250, which is has the same enclosure and basic design as the TI-1200 but has an extra row of keys (6 rows instead of 5 for the TI-1200). The result is the RPN-1250 (see pictures)
   

The design is based on a 64kbyte flash Microchip PIC 18F2680 driving a MAX 7219 8-digit 7-segment LED driver. The software is programmed in C with the Microchip IDE MPLAB X.
   

Functionalities as below:

- 4-level stack RPN scientific with conversions
- 20 memories (0 to 9 and .0 to .9) with store and recall arithmetic
- All memories and stack can be saved to and recalled from the 'constant' flash memory of the PIC
- programmable 98 steps (like the HP-29C) with alphanumerical display of the program
- 3 programs can be saved to and recalled from the 'constant' flash memory of the PIC
- 20 labels (0 to 9 and .0 to .9), subroutines, all 12 tests, PAUSE and VIEW functions, SST execution
- Speed roughly 8X the HP-41C

What it does not have (vs HP-29C) is:
- ISZ/DSZ
- indirect addressing
- ABS function but this can be easily programmed as x<0? CHS
- Polar/Rectangular conversions (sorry Den)

There can easily be implemented but there are not any keys left to include them without complicating the UI - any suggestions?

Hope I will have a chance to show it to HHC 2016 !

Benoit
Find all posts by this user
Quote this message in a reply
09-27-2015, 08:40 PM
Post: #2
RE: RPN-1250
Very nice! Is the software open source?
Might be tempted to make an RPN-1250 myself then Smile
Find all posts by this user
Quote this message in a reply
09-27-2015, 09:42 PM
Post: #3
RE: RPN-1250
(09-27-2015 06:17 PM)Benoit Maag Wrote:  Following the repurposing of the TI-1200 into the RPN-1200 RPN scientific calculator, I wanted to take the challenge of making a programmable version by repurposing the TI-1250, which is has the same enclosure and basic design as the TI-1200 but has an extra row of keys (6 rows instead of 5 for the TI-1200). The result is the RPN-1250 (see pictures)

<snip>

Benoit

Nice going Benoit! I look forward to seeing it!

-Jonathan
Visit this user's website Find all posts by this user
Quote this message in a reply
09-28-2015, 02:01 AM (This post was last modified: 09-28-2015 02:11 AM by matthiaspaul.)
Post: #4
RE: RPN-1250
(09-27-2015 06:17 PM)Benoit Maag Wrote:  What it does not have (vs HP-29C) is:
- ISZ/DSZ
- indirect addressing
- ABS function but this can be easily programmed as x<0? CHS
- Polar/Rectangular conversions (sorry Den)

There can easily be implemented but there are not any keys left to include them without complicating the UI - any suggestions?
The original layout (as far as I could decipher it on the photo):
Code:

GTO   BST   SST   R/S
GSB   LBL   SV    PSE
RTN   TST   LD    VIEW

      PRGM  CHS   /
F     IP    EEX   FIX
G     FP    NOP   SCI

7     8     9     *
SIN   COS   TAN   STO
ASIN  ACOS  ATAN  RCL

4     5     6     -
LN    LOG   SQRT  x<>y
e^x   10^x  x^2   Rv

1     2     3     +
1/x   in>mm mi>km lb>kg
y^x   mm>in km>mi kg>lb

<     0     .     ENTER
CLR   pi    F>C   LASTx
ALL   >DRG  C>F
I took the freedom to rearrange some keys in order to add some of the missing functions. My suggestion would be as follows:
Code:

GTO   BST   SST   <
GSB   LBL   SV    CLR/A
RTN   TST   LD    PRGM

R/S   1/x   CHS   ENTER
F     Rv    x<>y  LASTx
G     SCI   FIX   VIEW

7     8     9     /
SIN   COS   TAN   RCL
ASIN  ACOS  ATAN  STO

4     5     6     *
LOG   LN    SQRT  y^x
10^x  e^x   x^2   |x|

1     2     3     -
in>mm mi>km lb>kg F>C
mm>in km>mi kg>lb C>F

0     .     EEX   +
PSE   IP    pi    P>R
NOP   FP    >DRG  R>P
- Combined R/S run/stop and F/G modifiers to something like F/G/R/S. Normal function is as F/G modifier, but if pressed three times in a row, it will work as R and run the program. In a running program, pressing the key will work as S, that is, stop the program. This will make it work as F/G modifier again.
- Combined CLR and ALL. First F+CLR will invoke "Clear", either F+CLR+< (or F+CLR immediately followed by F+CLR again) will invoke "Clear All".
- Added P>R and R>P functions
- Added |x| function
- Rearranged some assignments for an IMHO more logical, easier to memorize layout and more convenient usage (although various compromises had to be made given the very limited number of keys):

- EEX directly invocable and part of the numpad
- pi is often on the same key as EEX
- IP/FP are semantically related to decimal points
- PSE is often on same key as 0
- RCL is used more often than STO
- Operations 1/x and +/- are frequently needed and typically located close to Enter
- Rv and x<>y are frequently needed stack manipulations and should be easily accessible
- LOG and 10^x in same column as 1 for mnemotical reasons
- LN and e^x in same colum as 2 for mnemotical reasons (e=2...) (Another possible order instead of LOG/LN/SQRT could be SQRT/LN/LOG, but it would not group SQRT near y^x.)
- Enter key above op keys, not below them. This makes the four op keys line up nicely with the numpad
- Delete (<) in upper right corner

Greetings,

Matthias


--
"Programs are poems for computers."
Find all posts by this user
Quote this message in a reply
09-28-2015, 02:36 AM
Post: #5
RE: RPN-1250
(09-28-2015 02:01 AM)matthiaspaul Wrote:  
(09-27-2015 06:17 PM)Benoit Maag Wrote:  What it does not have (vs HP-29C) is:
- ISZ/DSZ
- indirect addressing
- ABS function but this can be easily programmed as x<0? CHS
- Polar/Rectangular conversions (sorry Den)

There can easily be implemented but there are not any keys left to include them without complicating the UI - any suggestions?
The original layout (as far as I could decipher it on the photo):
Code:

GTO   BST   SST   R/S
GSB   LBL   SV    PSE
RTN   TST   LD    VIEW

      PRGM  CHS   /
F     IP    EEX   FIX
G     FP    NOP   SCI

7     8     9     *
SIN   COS   TAN   STO
ASIN  ACOS  ATAN  RCL

4     5     6     -
LN    LOG   SQRT  x<>y
e^x   10^x  x^2   Rv

1     2     3     +
1/x   in>mm mi>km lb>kg
y^x   mm>in km>mi kg>lb

<     0     .     ENTER
CLR   pi    F>C   LASTx
ALL   >DRG  C>F
I took the freedom to rearrange some keys in order to add some of the missing functions. My suggestion would be as follows:
Code:

GTO   BST   SST   <
GSB   LBL   SV    CLR/A
RTN   TST   LD    PRGM

R/S   1/x   CHS   ENTER
F     Rv    x<>y  LASTx
G     SCI   FIX   VIEW

7     8     9     /
SIN   COS   TAN   RCL
ASIN  ACOS  ATAN  STO

4     5     6     *
LOG   LN    SQRT  y^x
10^x  e^x   x^2   |x|

1     2     3     -
in>mm mi>km lb>kg F>C
mm>in km>mi kg>lb C>F

0     .     EEX   +
PSE   IP    pi    P>R
NOP   FP    >DRG  R>P
- Combined R/S run/stop and F/G modifiers to something like F/G/R/S. Normal function is as F/G modifier, but if pressed three times in a row, it will work as R and run the program. In a running program, pressing the key will work as S, that is, stop the program. This will make it work as F/G modifier again.
- Combined CLR and ALL. First F+CLR will invoke "Clear", either F+CLR+< (or F+CLR immediately followed by F+CLR again) will invoke "Clear All".
- Added P>R and R>P functions
- Added |x| function
- Rearranged some assignments for an IMHO more logical, easier to memorize layout and more convenient usage (although various compromises had to be made given the very limited number of keys):

- EEX directly invocable and part of the numpad
- pi is often on the same key as EEX
- IP/FP are semantically related to decimal points
- PSE is often on same key as 0
- RCL is used more often than STO
- Operations 1/x and +/- are frequently needed and typically located close to Enter
- Rv and x<>y are frequently needed stack manipulations and should be easily accessible
- LOG and 10^x in same column as 1 for mnemotical reasons
- LN and e^x in same colum as 2 for mnemotical reasons (e=2...) (Another possible order instead of LOG/LN/SQRT could be SQRT/LN/LOG, but it would not group SQRT near y^x.)
- Enter key above op keys, not below them. This makes the four op keys line up nicely with the numpad
- Delete (<) in upper right corner

Greetings,

Matthias

Matthias,

Thank you for the suggestions ! I will look into that.

BTW, there were a few things tha are not visible on the keyboard:
- pressing F/G 3 times currently loops back to no prefix (CLEAR-PREFIX) - maybe I can use NOP as the CLEAR-PREFIX option, or as R/S.
- G-ENTER actually calls an Escape Mode where the display brightness can be adjusted, the version of the software can be displayed and so on. So I would need a way to get there.

Benoit
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)