I imaging a program that make hp 49 act a little like ti 89. I would like a
var. that will remember the last expression (or more) on the stack and the
last command.
Example:
1/2+1/2 EVAL = 1 then the var. should contain: EVAL{ 1/2+1/2 }
cos(x)+sin(x) - EXP(-x) LAP = 1/(SQ(x)+1) + x/(SQ(x)+1)-1/(x+1)
Then the var. should contain: LAP{ cos(x)+sin(x) - EXP(-x)}
1/(SQ(x)+1) + x/(SQ(x)+1)-1/(x+1) EVAL = 2*x/(x^3+x^2+x+1)
Then the var. should contain: EVAL{1/(SQ(x)+1) + x/(SQ(x)+1)-1/(x+1)}
The idea with this is that I have a possibility to check my expression and
if I have entered the right numbers.
Know it is almost like ALG mode so I could always turn over to the dark
side, but I love RPN mode, but again It would be nice to have the
possibility to check my expressions.
Does anyone other than me think that it could be a nice program??
"Martin Nielsen" <***m.ni...@mail1.stofanet.dk> wrote in message
news:js9p6.18496$m9.1...@news101.telia.com...
I don't understand.
That's what the Algebraic mode is doing.
Also if you set-up the step by step mode, every operation in the HP49 is
recorded and put on the stack
Jean-Yves
"Martin Nielsen" <***m.ni...@mail1.stofanet.dk> wrote in message
news:js9p6.18496$m9.1...@news101.telia.com...
> I don't understand.
> That's what the Algebraic mode is doing.
Yes but I don’t want to use alg mode, I bought my hp because of RPN mode.
Actual I bought hp even though my school recommend TI I am the only one in
my class that don’t use TI 89.
> Also if you set-up the step-by-step mode.
At first I don’t like step-by-step mode, because I think it take time, and
second the step by step mode does not calculate the way I do by hand.
> Recorded and put on the stack
I can only make it work when I use EQW. Moreover the stack is filled with
many expressions if I edit a lot in EQW. Which I think would be nicer to
have in a Last cmd var.
My main idea is to have opportunity to check my figures even though if it is
only “2+2”
Regards Martin
Aren't you satisfied with left shift CMD command (it works fine in RPN
mode) ? I have the impression that CMD does what you want....
C. Noot-Huyghe
"Martin Nielsen" <***m.ni...@mail1.stofanet.dk> wrote in message
news:1Dqp6.18$F9....@news101.telia.com...
NO
> I would like a [variable? program?] that will remember
> the last expression (or more) on the stack, and the last command.
> Example:
> 'COS(X)+SIN(X)-EXP(-X)' LAP = [answer]
> Then the var. should contain: LAP { 'COS(X)+SIN(X)-EXP(-X)' }
> The idea with this is that I have a possibility to check
> my expression, and if I have entered the right numbers.
> I know it is almost like ALG mode, but I love RPN mode.
----------------
I have three different ideas for you:
Idea #1: Press ENTER to DUPlicate stack level 1 before you EVAL it.
Example:
'2+3' then press ENTER (once or twice), then EVAL.
Stack:
2: '2+3'
1: 5
----------------
Idea #2: Algebraic evaluator (HP48/49):
\<< DUP -3. CF EVAL = \>>
Assign the above program to a key,
or use a short name that you can type.
Example:
'2+3' ==> '2+3=5'
Note that the "=" command combines two expressions
into one equation; the EQ\-> command does the reverse
(separates an equation into left side, right side).
----------------
Idea #3: Generalized RPN-mode on-stack "history" (HP48/49):
%%HP: T(3)F(.); @ For transfer using Kermit.
@ Comments:
@ \-> is the "right arrow" symbol
@ \Ga or \Gb is alpha right-shift A or B
@ The name '\GbENTER' must be used exactly as shown
\<< "~n" LASTARG 1. 6. FOR ~n
IF ~n ROLL DUP "~n" SAME
THEN DROP ~n 1. - \->LIST 7. '~n' STO
ELSE ~n ROLLD END NEXT SWAP
IF "{0 " OVER + STR\-> DUP SIZE GET TYPE { 14. 18. } SWAP POS
THEN \->TAG SWAP ELSE DROP2 END \>> '\GbENTER' STO
-55. CF -62. SF -63. SF @ Required flag settings
Examples (RPN mode):
You type 2 3 and then press +
The stack then shows:
2: +: { 2 3 }
1: 5
You type 'COS(X)+SIN(X)-EXP(-X)' and then press LAP
The stack then shows:
2: LAP: { 'COS(X)+SIN(X)-EXP(-X)' }
1: [answer]
"History" entries will be generated for algebraic functions, but not
for most commands (e.g. not for SWAP, EVAL, ->NUM, R->B, DATE+ etc.)
Note, however, that 'expression' LAP works as you wish,
as do all the HP49 CAS commands.
Functions must be executed via keyboard, menu keys, or Catalog.
Spelling a function in the Edit line will not produce a history
line, because the key which triggers Edit line processing
is then ENTER, rather than the function whose name you spelled.
This may not be perfect, but it's Beta than Notting :)
-----------------------------------------------------------
With best wishes from: John H Meyers <jhme...@mum.edu>
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----== Over 80,000 Newsgroups - 16 Different Servers! =-----
Save unlimited new entries [CMD]
(HP49G version; see hpcalc.org for HP48 version).
This allows more than four entries to be retained;
for example, the program below is configured to retain
up to 100 of the most recent *unique* entries.
Repeated entries are simply moved to the front of the list,
rather than being duplicated in the list.
Important:
Do 256 ATTACH *before* downloading or entering these programs.
%%HP: T(3)F(.); @ Include this line to send file to calc with Kermit
HOME @ Store the programs in the HOME directory
@ This program automatically saves all new entries:
\<< \->STR -95. FC? { DUP }
{ "`" SWAP OVER "" SREPL DROP SWAP DUP2 + + } IFTE
:palparse: #2EF62h SYSEVAL :TRUE: #3A81h SYSEVAL SAME
\<< 'LastCmds' { ROT OVER VTYPE 0. < { { } } { OVER RCL } IFTE
DUP2 SWAP POS DUP
{ SWAP LIST\-> 1. - DUPDUP 4. + ROLL - 3. + ROLL DROP \->LIST }
{ DROP } IFTE + 1. OVER SIZE 100. MIN SUB SWAP STO }
Hidden EVAL :EVAL: #6F8Eh SYSEVAL \>>
{ :ParseFail: #2EF6Eh SYSEVAL } IFTE \>> '\GaENTER' STO
@ You must use the exact name '\GaENTER' with alpha,right-shift,A
@ Change the constant 100 to however many entries you want to keep.
@ This program displays saved entries for re-use:
\<< -55. CF -62. SF -63. SF 'LastCmds' "" OVER + SWAP
IFERR Hidden RCL THEN DROP2 "No Saved Commands" DOERR
ELSE 1. CHOOSE { "" SWAP IFERR INPUT THEN DROP2
ELSE \GaENTER END } IFT END \>> 'CMDS' STO
@ Assign the above to CMD on the keyboard:
\<< CMDS \>> 41.2 ASN
@ This program purges all saved commands ("clear memory cache"):
\<< 'LastCmds' Hidden PURGE \>> 'PGCMDS' STO
@ :: COLA WithHidden ; [uses the Hidden Directory]
@ The H\-> command is from internal Development library 256
"D9D201DF603C073B2130" H\-> 'Hidden' STO
-62. SF -63. SF @ Required flag settings
@ Edit an existing object *and* save its edited text (optional):
\<< -55. CF DUPDUP TYPE 6. == { RCL } IFT \-> ~n ~o
\<< "" ~o :EDITDECOMP$: #25ECEh SYSEVAL
IFERR INPUT THEN DROP2 ~n ELSE \GaENTER ~n
TYPE 6. == { ~n STO } IFT END ~o DROP \>> \>> 'EDITC' STO
{ CMDS EDITC PGCMDS \GaENTER Hidden } ORDER
@ End of downloadable file (EVAL it to install all programs)
Notes:
Backup your memory before using these for the first time!
New entries are saved only when USER mode is on
[Left-shift Alpha toggles USER mode].
CMDS are saved even across warmstarts (ON+C),
whereas the built in CMD buffers are not saved.
The built-in HP48/49 EDIT function (invoked whenever editing
an existing object) saves edited text only in the four default
original CMD buffers; to recover and reuse any of those
four buffers, toggle USER mode off via Left-shift Alpha
before invoking the keyboard CMD operation.
You must toggle USER mode back on again to resume saving new
entries in the extended set of CMDS buffers provided above.
EDITC allows even edited objects to be saved for use with CMDS,
if desired (use EDITC in place of built-in edit functions).
Tags such as :palparse: and :TRUE: etc. are optional
(these indicate the names of supported ROM entry points).
JHM> This allows more than four entries to be retained; for example,
JHM> the program below is configured to retain up to 100 of the most
JHM> recent *unique* entries.
Everybody: Go and install this program. It is one of the best I have
running on my HP49G. Simply the perfect function for the HIST key in
RPL mode.
- Carsten
--
Carsten Dominik <dom...@astro.uva.nl> \ _ /
Sterrenkundig Instituut "Anton Pannekoek" |X| _
Kruislaan 403; NL-1098 SJ Amsterdam /| |\ _ _ _/ \
phone +31 (20) 525-7477; FAX +31 (20) 525-7484 __|o|___/ ~~ \___/ ~~~
Sure, this program will save whatever is on level-1:
HP49G version:
\<< :EDITDECOMP$: #25ECEh SYSEVAL \GaENTER \>> 'SAVEC' STO
"Editing" with the EDITC program will also do it
(whether or not you make any changes, the result will be saved).
A longer program (reproducing almost all of '\GaENTER')
could be created to save a little execution time,
but I'm lazy, and am happy to let the calc do all the work ;-)