AOH :: CSHP48_1.FAQ
HP 48 S/SX/G/GX Frequently Asked Questions
|
Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!news!uhog.mit.edu!news.mathworks.com!newshost.marcam.com!zip.eecs.umich.edu!madd0118
From: madd0118@gmi.edu (Keith Maddock)
Newsgroups: comp.sys.hp48,comp.answers,news.answers
Subject: comp.sys.hp48 FAQ : 1 of 4 : Common Questions
Supersedes: <HP48_FAQ_v320_1_060195@gmi.edu>
Followup-To: comp.sys.hp48
Date: 20 June 1995 22:25:39 GMT
Organization: GMI Engineering & Mgt. Institute, Flint, MI
Lines: 1254
Approved: news-answers-request@MIT.EDU
Expires: 30 August 1995 22:25:42 GMI
Message-ID: <HP48_FAQ_v321_1_062095@gmi.edu>
Reply-To: madd0118@nova.gmi.edu
NNTP-Posting-Host: prizm.gmi.edu
Summary: Answers to Frequently Asked Questions about HP48 calculators
Keywords: FAQ, HP48
X-Newsreader: TIN [version 1.2 PL0]
Xref: senator-bedfellow.mit.edu comp.sys.hp48:35834 comp.answers:12629 news.answers:46727
Archive-name: hp/hp48-faq/part1
Last-modified: 06/20/1995
Version: 3.21
Posting-Freqency: every 14 days or so
*********************************************************
HP 48 S/SX/G/GX Frequently Asked Questions List
*********************************************************
PART 1 of 4: Common Questions: Sections I - III
Currently Maintained by: Keith Maddock (madd0118@nova.gmi.edu)
Originally Compiled by: Darryl Okahata
The purpose of this FAQ is to provide answers to commonly asked
questions about the Hewlett Packard 48 family of scientific calculators.
This list contains information which has not necessarily been verified,
and is not guaranteed to be correct, or even reflecting reality. :-) It
has been compiled from various postings in comp.sys.handhelds and
comp.sys.hp48 as well as other sources. In particular, some parts were
taken from older HP 48SX "FAQ lists".
For some questions, there may be different answers for each
calculator (G/GX vs. S/SX). In this case S/SX specific information is
preceded by an SX: on the left margin of the first line of each S/SX
specific paragraph. G/GX information is denotated by a GX: in the same
place. If a paragraph has no notation, then it is valid for all
versions.
The latest version of this FAQ is now kept in HTML form on the
World Wide Web. The URL is: http://www.gmi.edu/~madd0118/hp48/faq/
Text-only versions of the FAQ will be adapted from the HTML version
for posting to the newsgroup as needed.
You should be able to find the latest version of the text FAQ at the
following locations:
ftp.cis.com : /pub/hp48g/uploads/48faqxxx.zip or
/pub/hp48g/documentation/48faqxxx.zip
ftp.stud.fh-heilbronn.de : /pub/hp48/info/FAQ/48faqxxx.zip or
(caution: slow line!) /pub/hp48/incoming/48faqxxx.zip
Please send any comments or suggestions to:
Keith Maddock madd0118@nova.gmi.edu
*********************************************************
Table of Contents:
*********************************************************
Key: ! =new Q/A + =revised answer
Part 1:
I. Misc. Questions
1.1 I'm a novice, and I have some questions. Where should I start?
1.2 What Usenet Newsgroups are there for the HP 48?
1.3 What are some good FTP sites for the HP48?
+ 1.4 Are there any good WWW links for HP48 stuff?
1.5 What are good places to buy HP48's and accessories?
II. Questions about ROM versions
2.1 What does the SX/GX have that the S/G doesn't?
2.2 What is the difference between the HP 48G/GX and the HP 48S/SX?
2.3 How can I tell what ROM revision I have?
2.4 What bugs exist in the various versions of the HP 48?
2.5 What is new with the revision "J" ROM? (S/SX)
2.6 What happened to ROM revisions "F", "G", "H", "I", "O", and "Q"?
2.7 Can I upgrade my HP 48S/SX?
2.8 Can I upgrade my buggy GX to the latest ROM revision?
2.9 What's the latest ROM version?
2.10 Why would I buy a S/SX rather than a G/GX?
III. Questions about the Operating System / Using the HP
3.1 I typed 'RULES' on my G/GX and got a crossword puzzle! What does it
mean? (GX)
3.2 Why does my HP 48 occasionally "freeze" for a moment?
3.3 What do I do if my HP 48 locks up?
3.4 My HP 48 seems to take longer to turn on and off. What's going on?
3.5 What are all the different ON-KEY combinations and what do they do?
3.6 What are the different interactive self-tests?
3.7 I can't account for some of the RAM in the HP 48! and
When I clear my memory, I don't have 32K free! Why?
3.8 What are the best methods for dealing with libraries?
3.9 Why does (1/3)*3 equal 0.999999999999?
3.10 Why does my HP say that 0^0=1?
3.11 If I add two temperatures like 34 deg.F and 11 deg.F, I get 504.67
deg.F. Why don't I get 45 deg.F?
3.12 How can I add my own units? What's the 1_? unit for?
3.13 I want `pi' to be a numeric value, not a symbol. What's happening?
3.14 What are those little numbers near the top of my screen and how do I
get rid of them?
3.15 What tricks are there for manipulating matrices?
3.16 Can I use my HP48 as a remote or phone dialer?
3.17 I could speed up my HP-28S. How can I speed up my HP 48?
3.18 What is the hidden directory and how do I access it?
3.19 How can I recall one object from a memory archive?
! 3.20 How do I take the logarithm of a base other than 10 or e?
PART 2:
IV. Questions about cards, data transfers, batteries, hardware
4.1 Can I upgrade my S or G to more than 32K ram?
4.2 How can I get/build a cable for my HP48?
4.3 Why doesn't the I/R port work farther than a few inches?
4.4 Can my HP48 talk to my HP100LX via Infrared?
4.5 I downloaded a program to my HP, and when I ran it, it put a string
on the stack like "HPHP48-.......". What's wrong?
4.6 Why does XRECV not work sometimes? (GX)
4.7 What do the funny symbols \->, \GS+, etc., mean?
4.8 What are the pinouts for the HP 48 serial connector?
4.9 Is there any information on interfacing to the HP 48?
4.10 How can I transfer programs/data from my HP-28S to my HP 48?
4.11 Can I use rechargeable batteries with the HP 48?
4.12 How can I tell, from within a program, if the battery is low?
4.13 My RAM card was plugged into the calculator when I changed the RAM
card battery, yet I lost all the information on the card. What
happened?
4.14 Why do I get an "Invalid card data" error when I merge a RAM card?
4.15 I've heard that other manufacturer's RAM cards will work with the
HP 48. Is this true? Will it work?
4.16 Why does the HP 48SX display flicker slightly?
4.17 I broke the LCD screen is there an easy way to get another?
! 4.18 Can I use my Amateur Radio with my HP48?
V. Questions about programs
5.1 Where can I get programs and information for the HP 48SX?
5.2 What are the Goodies Disks and where do I get them?
5.3 How do I get access to the HP Calculator BBS?
5.4 What are files that end with ".zip", ".Z" or ".z"?
5.5 What is a "ship" file?
! 5.6 What is \->ASC or ASC\-> and where can I get it?
5.7 What is the HYDE library, and how do I get rid of it?
5.8 What is the Minehunt game, and how do I use it?
VI. Questions about programing and advanced user functions
6.1 I've heard the names "RPL", "Saturn", "STAR", "Voyager", "GL", etc..
What do they mean
6.2 Is there a C compiler for the HP48?
6.3 Why do SysRPL programs run faster than UserRPL programs?
6.4 How do I know what library ID number to use for my program?
6.5 What information is there on the internals of the HP 48?
6.6 Are there any viruses for the HP48?
6.7 How do I store fields of variable length string data in a compact,
rapidly accessible manner that does not require the overhead of
storing strings in lists?
6.8 What is "Vectored Enter", and how do I use it?
6.9 What is "WSLOG"?
6.10 What are SYSEVALs?
6.11 What are some useful SYSEVALs?
6.12 What are LIBEVALs?
6.13 What are some useful LIBEVALs?
6.14 What is the format of a GROB object?
! 6.15 What is the AUR and what information does it contain?
! 6.16 What is the syntax for the INFORM, CHOOSE, and MSGBOX commands
on the G/GX?
*********************************************************************
PART 3:
* Appendix A: ASC\-> and \->ASC functions:
* Appendix B: Using non-HP RAM cards in your HP 48SX:
* Appendix C: What's new in the HP 48G/GX
* Appendix D: The EquationWriter Bug & Rev J Bugfix
* Appendix E: Compact Data Storage:
* Appendix F: Various useful functions
* Appendix G: Rotation rate to angular frequency conversion bug
* Appendix H: How to make a Serial Cable for your HP48
PART 4:
+ * Appendix I: HP48 "BEST PROGRAMS AND WHERE TO GET THEM" LIST
******************************************************************
I. Misc. Questions
******************************************************************
1.1 I'm a novice, and I have some questions. Where should I start?
Start by perusing the HP 48 manuals. You'd be amazed how many
questions can be answered if you read the manuals.
SX:Earlier HP 48S/SX manuals came in two volumes. The first volume
dealt with operating instructions, and the second volume dealt with
programming. Later HP 48S/SX manuals combined these two volumes
into one.
GX:HP 48G/GX models come with a one-volume owners manual that covers
all of the non-programming aspects of the calculator. An Advanced
User's Reference (AUR) is available that covers programming aspects.
It is highly recommended. They also come with a Quick Start Guide,
a guided tour of some of the HP48's capabilities.
Also, look over the section "Answers to Common Questions", in
Appendix A of the manual. If you have a two-volume manual, it will be in
volume II.
******************************************************************
1.2 What Usenet Newsgroups are there for the HP 48?
comp.sys.hp48 -- Primary newsgroup
comp.sources.hp48 -- For HP 48 programs. (This newsgroup
is moderated by Chris Spell -- send
submissions to hp48@seq.uncwil.edu.)
(this newsgroup has been dead for a
few months now )
comp.sys.handhelds -- Occasionally, HP 48 information is
posted to this newsgroup.
******************************************************************
1.3 What are some good FTP sites for the HP48?
Many HP48 programs can be found on the following FTP sites:
wuarchive.wustl.edu : /systems/hp/hp48
ftp.cis.com : /pub/hp48g
hpcvbbs.external.hp.com : /dist
For a list of other HP48 FTP sites, see appendix 1 of
appendix I (HP48 Best Programs and Where to Get Them List)
******************************************************************
1.4 Are there any good WWW links for HP48 stuff?
Rather than list out a long list of HP48 related WWW resources
I am instead including a link to my HP48 Page, which contains links
to all the HP48 stuff I have been able to find....
Keith's HP48 Page:
http://www.gmi.edu/~madd0118/hp48/
******************************************************************
1.5 What are good places to buy HP48's and accessories?
Educalc:
Educalc carries a complete line of HP calculators and accessories.
They also sell used HP48 S and SX's, and buy them as trade ins.
To get a free catalog, call them.
Phone #'s:
Toll Free Order: (800) 677-7001 \___ Orders and Customer Service
Toll Order: (714) 582-2637 / 8-5, M-F, West Coast Time
Credit Card Order: (800) 535-9650 ext. 9162 (all hours, all days)
FAX orders: (714) 582-1445
Technical Support (714) 582-2637
"Para ayuda en Espa¤ol - pregunte por Irma"
Elek-Tek:
Elek-Tek seems to only carry HP name brand products. Their prices may
be slightly cheaper than EduCalc, but they don't carry non "HP brand"
products (such as RAM cards), that are much cheaper than HP brand ones.
Toll Free: (800) 395-1000 Order: (708) 677-7660
Fax: (708) 677-7168 Fax Orders: (708) 677-1081
Office Max:
Toll Free: (800) 788-8080
Office Depot
Executive Photo and Electronics:
120 West 31st St., New York, NY 10001-3485
Tel: 800-223-7323 or 212-947-5295 Fax: 212-239-7157
Supposedly has different prices for 48 depending on country
of manufacture....
Calculators Inc., Minneapolis, MN (612) 866-8908
Carrington, (800) 982-3731
Global Connections Incorporated (formerly Connection Point, Inc.)
50 South River Street, Suite 105, Janesville, WI 53545
(608) 752-9548 (608) 752-1537
Bristol, UK - Decimal Business Machines Ltd:
"at Three Queens' Lane. They're on 0272 294591/5."
******************************************************************
II. Questions about ROM versions
******************************************************************
2.1 What does the SX/GX have that the S/G doesn't?
SX: The HP 48S is the same as the HP 48SX except that the HP 48S does
not have the two expansion slots of the HP 48SX. This means that
the HP 48S cannot be expanded and can only access 32K of memory,
versus 288K for the HP 48SX (two 128K RAM cards). (Actually, there
are now third-party RAM cards that contain 256K or 512K on a single
card -- this memory is accessed via a bank-switching mechanism.)
GX: The HP48G is the same as the GX except for two differences. The GX has
the 2 expansion ports, and also has 128K RAM built in, where the G only
has 32K.
If you plan on heavily using your calculator, you will probably find
that 32K is not enough memory.
******************************************************************
2.2 What is the difference between the HP 48G/GX and the HP 48S/SX?
The HP 48G and the HP 48GX calculators are, basically, slightly
faster (by 40%) versions of the HP 48S and HP 48SX calculators, with
more features, such as 3D-plotting and a new forms-based interface.
Much of the HP Solve Equation Library card is now built-in. See
Appendix C for a detailed list of features.
Note, however, that the HP 48G/GX is different from the HP 48S/SX in
a number of significant areas:
1. The HP 48GX comes with 128KB RAM, as opposed to 32KB RAM in the
HP 48SX. The HP 48G still has 32KB RAM, however. The HP 48G/GX
also has twice the ROM (512K), compared the HP 48S/SX (256K).
2. Much of the HP 48G/GX internals have changed, compared with the
HP 48S/SX. Unfortunately, this means than many programs written
in assembly language or System RPL won't work on the HP 48G/GX.
This is especially true of any program that tried to access the
display memory directly.
3. The HP 48G/GX CPU runs at 4MHz, instead of the 2MHz used with
the HP 48S/SX CPUs. However, due to various overhead (memory
bank switching, etc.), the speed increase between the G/GX and
S/SX is less than 2X. G/GX throughput is approximately 40%
faster.
4. Port 2 of the HP 48G/GX can access up to 4MB, in 128K chunks
(done via bank-switching).
******************************************************************
2.3 How can I tell what ROM revision I have?
GX:Type the command "VERSION". Note that this command is not part of
any key or menu, and so you must spell it out.
Type #30794h SYSEVAL. It returns a string, "HPHP48-x", where x is your
ROM revision. This works for both SX and GX.
SX:1. Turn the calculator on (press ON and then release).
2. Press ON again, and hold it down.
3. While holding down the ON key, press and hold down the "D" key (the
fourth white key in the top row).
4. While holding down the "D" key, release the ON key.
5. Release the "D" key. The display should be blank, with the
exception of three vertical lines (one down the center, and one
down each of the right and left sides).
6. Press the backspace key (it says DROP and CLR over it). A
meaningless string of digits should appear in the top line of the
display (mine says "705D9:1B8DA178E5A111B6" -- yours may be
different).
7. Press and hold down the EVAL key. It should say:
Version HP48-*
Copyright HP 1989
where the * is an uppercase letter (A, B, etc.) indicating
the ROM version.
8. Release the EVAL key. Hold down ON and hit "C" (the third
white key in the top row. This is a general reset
operation that returns the calculator to normal from the
diagnostic stuff (which is where ON-D puts you).
******************************************************************
2.4 What bugs exist in the various versions of the HP 48?
Confirmed
Version(s) Bug
----------------------------------------------------------------------
A DEFINE rounds numbers in user-defined functions if STD
is not the current display mode.
A KGET on a zero length file from another machine will
cause the calculator memory to be cleared.
A NXEQ from the Graphics Environment with flag -3 set (SYM
off in Modes) can overwrite the current equation with a
number.
A Displaying the clock in 24-hour format causes the
one-digits for minutes to be incorrect in the alarm
catalog.
A,B,C INV returns an incorrect result if used on an 8x8 or
larger matrix. To get around this problem, divide the
identity matrix with the matrix to invert.
A,B,C,D Entering a symbolic complex number in polar form like
'(A,<B)' (where < is really the funny little angle
symbol), gives an expression in A and B that is wrong
(the A and B are interchanged so A is the angle and B is
the magnitude).
A,B,C,D If the clock is displayed during an ARCHIVE via RS-232,
there is a chance (not 100%) that calculator memory will
be cleared, after the transfer. The workaround is to
turn the clock display off before doing the transfer.
Should memory be cleared, you will have to restore the
contents of memory from the archive.
A,B,C,D TRNC and RND allow for an array in level 2 and a
symbolic in level 1 of the stack. This allows you to put
an array in a symbolic. Example:
[ 2 3 ]
'7/8'
RND
returns 'RND(UNKNOWN,7/8)'
A-E There's a bug in the EquationWriter that is "fixed" in
the Rev J ROM. See the appendix titled "The
EquationWriter Bug & Rev J Bugfix" for details.
E,J BESTFIT: Occurs when a two dimensional array is stored in
'\GSDAT' (SigmaDAT). Pressing the BESTFIT softkey
multiple times will leave a lot of useless reals on the
stack.
K First HP 48G/GX released; includes various bugs affecting
ports. Therefore, version K was built only into HP 48G units.
K,L,M,P XROOT Function fails when used with list processing unless
X=Y. It does not corrupt memory. Fix: Preced any XROOT
which will use list processing with a SWAP
L Second HP 48G/GX released; fixed the port bugs. This ROM
version is that present in the 2,000 HP 48GXs sold at the
ASEE conference for $90 apiece.
L,M HP 48GX may lose all User memory when: clock is
displayed, a library object is be stored in user memory,
and a RAM card is lugged in to port one and merged with
User Memory. If all four of these conditions are present
and the calculator is turned on when the clock is being
updated by the system, a loss of all User Memory may
occur.
FIX: Just type the following in on your calc:
<< RCLF -> f << -40 CF OFF f STOF >> >> 91.3 ASN
Turn on USER mode
L,M EquationWriter/Character Picker Bug: If the size of the
equation is greater than the regular size of the screen,
calling the Character Picker in Equation Writer will
garble the screen.
M EVALing a tagged object which contains an operator (+, -,
*, /, etc) as the second or subsequent character will
leave an External and System Binary on the stack, as
well as the original object.
L,M,P SigmaDAT: Put a NON-MATRIX in '\GSDAT' (SigmaDAT), run
STAT graphical apps, edit \GSDAT. Causes a crash.
L,M,P XRECV: XRECV will fail or cause memory lost if the amount
of free RAM left is not about twice the size of the
expected file. Fix: see FXREV on GD 9 by Joe Horn.
L,M,P RREF does not transform the matrix into Row Reduced Echelon
Form correctly if the first column of the matrix consists
entirely of zeros. It may also return incorrect answers in
some matrices.
L,M,P,R portnum: { dir ... var } RCL/EVAL fails if portnum >= 2
L,M,P,R Rotation rate to angular frequency conversion bug
See Appendix G for complete write-up.
M Fixes a variety of other bugs, and includes a new display
with better contrast.
M,P,R Repeated executions of FFT or IFFT can cause memory loss
The FFT and IFFT warmstart problem is caused by a CPU
return stack overflow during interrupt handling. The
problem can only occur when the argument to FFT or IFFT
is an MxN matrix with both M > 1 and N > 1. The vector
argument case is immune to this problem.
FIX: To compute the FFT of a matrix without risking
warmstart, expand the matrix into its row vectors using
->ROW, compute the FFT of each row vector, collect the
results into a matrix using ROW->, expand the matrix into
its column vectors using ->COL, compute the FFT of each
column vector, and finally collect the results into a
matrix using COL->. Except for less precision, this is
the same result as would be obtained by applying FFT on
the original matrix. Use the same procedure with FFT
replaced by IFFT to compute the IFFT of a matrix.
Here are program examples implementing the "matrix FFT"
and "matrix IFFT":
MFFT << ->ROW FFTLP ROW-> ->COL FFTLP COL-> >>
MIFFT << ->ROW IFFTLP ROW-> ->COL IFFTLP COL-> >>
FFTLP << -> n << 1 n START n ROLL FFT NEXT n >> >>
IFFTLP << -> n << 1 n START n ROLL IFFT NEXT n >> >>
M,P BESTFIT: Occurs when a two dimensional array is stored in
'\GSDAT' (SigmaDAT). Pressing the BESTFIT softkey
multiple times quickly can cause a warmstart, or SigmaDAT
to be erased. This occurs sometimes just by pressing
BESTFIT repeatedly, regardless of /GSDAT content. This bug
can also be triggered by pressing the BESTFIT softkey quickly
after pressing any other key. Simply pressing MODL then
BESTKEY quickly will trigger the bug.
M,P,R Eqwr/Eqlib interaction bug: If you pick an equation from
the EQ library, enter solver for that equation, enter an
algebraic on the stack like 'X^2', and press the down
arrow key to view algebraic in EquationWriter, the name
of the equation will appear in the EquationWriter along
with the unassociated algebraic.
P PROOT: If you put a matrix of coefficients on the stack
and press PROOT repeatedly, you will get a warmstart
A-R MatrixWriter Bug: This shows up when deactivating and
reactivating any of the two direction movement fields.
If you do this, the active matrix field won't move as
it's supposed to. For example: Launch the matrix writer
(check that your GOFORWARD field is activated). Enter [1]
[ENTER]. The active matrix field moves forward as it should.
Deactivate the GOFORWARD field and activate it again. Now
enter [2] [ENTER] [3] [ENTER]. The digits should show up on
the same row, but they don't, 'cause after you deactivated
and reactivated the GOFORWARD field, the active matrix field
stops moving according to the movement fields.
******************************************************************
2.5 What is new with the revision "J" ROM? (S/SX)
The revision J ROM has a faster equation writer, as well as some bug
fixes. Scrolling of graphics is also faster.
One "problem" is that the revision J ROM changed some undocumented
ROM entry points, which broke those programs that used them. If you
have a Rev J ROM, you will not be able to run some old programs.
******************************************************************
2.6 What happened to ROM revisions "F", "G", "H", "I", "O", and "Q"?
These versions either were never released to the public, or were
skipped over.
******************************************************************
2.7 Can I upgrade my HP 48S/SX?
When the G/GX first came out, HP had a trade in program. This is no
longer in operation. You can either try to sell you S/SX privately,
or you can trade it in at EduCalc. They will give you $50 credit
for a S, and $95 credit for an SX. You have up to 45 days after you
purchase your G/GX from them to send in you S/SX.
******************************************************************
2.8 Can I upgrade my buggy GX to the latest ROM revision?
As far as I know, not any more. They had a program a in early '94, but
it is over now. Contact the following for more info:
Hewlett-Packard Corporation
Calculator Support
1000 NE Circle Blvd
Corvallis, OR 97330
Phone (503) 757-2004 option 1
******************************************************************
2.9 What's the latest ROM version?
Revision R is the latest ROM version of the G/GX series.
Revision J is the last ROM version of the S/SX series.
******************************************************************
2.10 Why would I buy a S/SX rather than a G/GX?
Here's the Top 12 reasons to buy a S/SX instead of a G/GX:
(thanks to all who contributed)
1) May be slightly cheaper, having only 32k ram.
2) It isn't THAT outdated.
3) You can run neat emulators like x48
4) So what if it's a little slower?
5) You didn't need all those useless equations, graphics
capabilities, and math and science functions anyways!
6) If you break it, you're out less money!
7) You like seeing how much you can fit into 32k ram.
8) You like slow file transfers, using Kermit instead of Xmodem.
9) You want to be able to use all those lists of SYSEVALs for the SX.
10) You like having only 3 ports available max. 33 is ridiculous!
11) Since it doesn't have a built in equations library it is less
likely to be banned on tests.
12) Only wimps need GUI's, dialog boxes, and choose lists.
******************************************************************
III. Questions about the Operating System / Using the HP
******************************************************************
3.1 I typed 'RULES' on my G/GX and got a crossword puzzle! What does it
mean? (GX)
[From Joe Horn:]
Many commercial programs (like Windows) have similar hidden screens
that list the program's design team. Since they are always so cute
and well hidden, they are often referred to as "Easter eggs". The
RULES command on the G/GX is one such example.
Try using the RULES command. The names you see are as follows:
/----------------------\
| M G |
| P DIANA |
| CHARLIE X B D |
| BILL U N TED A |
| O A L N ALCUIN |
| B I JIM V |
| RON S E |
\----------------------/
ALCUIN was the HP-internal code name of the HP 48G during
development, because Alcuin was Charlemagne's teacher, and
Charlemagne, as you remember, was the code name of the 48SX.
The other names in the "Easter egg" above belong to:
BILL Wickes (list processing; "Father of RPL")
CHARLIE Patton (RPL operating system)
TED Beers (parameterized outer loop; interactive stack; key handling
system; high-level display management; input forms)
DIANA Byrne (project manager; plotting; graphics)
GABE Eisenstein (EquationWriter)
BOB Worsley (I/O)
PAUL McClellan (unit management; math)
CLAIN Anderson (product manager; marketing)
DENNIS York (manager)
JIM Donnelly (EQ LIB; list processing; variable tic logic; developer
support)
MAX Jones (menu system; editing)
DAVE Arnett (hardware)
DAN Coffin (manuals)
RON Brooks (marketing)
******************************************************************
3.2 Why does my HP 48 occasionally "freeze" for a moment?
The HP 48 must occasionally do "garbage collection" to free up
unused memory, and it is this garbage collection that is causing the
momentary "freeze". "Garbage collection" is where the HP 48 scans
through memory, looking for objects that are no longer used.
Using less stack supposedly makes garbage collection go faster.
To force a garbage collection, you can use the syseval #05F42h or
the SysRPL command GARBAGE. (see q/a # 6.10 for syseval info)
******************************************************************
3.3 What do I do if my HP 48 locks up?
NOTE: If you have it, read the sections in the GX manual starting
on page 5-16, "Special Memory Operations", and "Testing Calculator
Operation" on page A-9.
NOTE: under most circumstances, your calculator should never lock
up. Some earlier versions of the G/GX do this due to bugs. Of
course, depending on the program being run, it may appear to lock
up, but pressing the "ON" key usually interrupts whatever the
calculator is doing. If it does lock up, this is usually caused by
a buggy assembly-language or system RPL program, and, chances are,
the memory contents of your HP 48 are gone (as in "destroyed",
"terminated", "wiped out", "deleted", etc.).
First, check the batteries to make sure that they are installed
correctly.
Next, try is pressing the "ON" key again and again very RAPIDLY.
The operative word here is "rapidly". It's possible to write a
program that can only be interrupted during a very narrow window,
and so you must press the "OK" key again and again very rapidly to
interrupt the program. If the calculator doesn't respond within ten
or so seconds, go on to the next step.
Press "ON-+" a couple of times, just in case the LCD display
intensity was turned down. Here, "ON-+" means:
1. Press and HOLD DOWN the "ON" key.
2. Press and release the "+" key, WHILE HOLDING DOWN THE "ON" KEY.
3. Release the "ON" key.
If this doesn't work, the next thing to try is ON-C. This is a
"warm-start" or "system halt". Note that this will CLEAR the
stack. Here, "ON-C" means:
1. Press and HOLD DOWN the "ON" key.
2. Press and release the "C" key, WHILE HOLDING DOWN THE "ON" KEY.
3. Release the "ON" key.
If this does not work, it is possible that the HP is not responding
because it is not accepting input from the keyboard. It is possible
to execute a system halt without the keyboard using the hidden
reset button.
The reset button is hidden under one of the two upper rubber feet on
the bottom of the calculator (it's under one of the two feet near
the serial connector and I/R port). Note that the location of the
reset button (under which foot) varies from calculator to
calculator. If you gently pull out the rubber feet, you'll notice
that there is a small hole under each foot. The reset button is
located in the hole that has an "R" next to it. Once you've located
the correct hole, you press the button by GENTLY sticking an unbent
paper clip, into the hole with the "R" next to it. Hold for one
second and remove.
The next thing to try is a complete memory reset. Depending on the
state of your calculator, this may or may not preserve the contents
of memory. At the very least, even if the contents are preserved,
the contents of the HOME directory will probably be moved into a new
directory below HOME (HOME will be empty with the exception of this
new directory); you'll have to manually move the items back into
HOME.
To perform a complete memory reset, press ON-A-F. This means:
1. Press and HOLD DOWN the "ON" key.
2. Press and HOLD DOWN THE "A" key, WHILE HOLDING DOWN THE "ON" KEY.
3. Press and HOLD DOWN THE "F" key, WHILE HOLDING DOWN THE "ON" AND
"A" KEYS.
4. Release all of the keys.
5. At this point, the calculator will ask you if you want to
recover memory. Answer "yes" to this question. Note that this
can take a long time. If you answer "no", all of memory will be
cleared (the old contents will be lost).
******************************************************************
3.4 My HP 48 seems to take longer to turn on and off. What's going on?
The usual causes for this are RAM/ROM cards and libraries. When you
turn the calculator on, it checks RAM (the more you have, the longer
it takes), and checks to see if any libraries need initializing.
Also, having a lot of alarms can supposedly also cause this.
*****************************************************************
3.5 What are all the different ON-KEY combinations and what do they do?
[Note: this answer written by a member of the HP48 team in Corvallis]
--begin quote-- (formatted for this document)
[ON] In most cases, this will move you to, or toward, the stack
environment.
[ON]+A+F This is the manual Coldstart. It will break out of
_almost_ any hung program, and offer you the dreaded
option... Try to recover memory? Note that this is your
next-to-last resort in a lock-up, so don't give your
machine this three-fingered salute unless you really want
to possibly clear memory.
[ON]+B This is the Oops! key for [ON] codes. For many [ON]
sequences, this cancels the operation, so long as you press
the B before releasing the [ON] key. Try it sometime, if you
must, just so you remember it. It can be a life-saver, in
case of an accidental [ON]+A+F in process, or even
accidentally hitting [ON] during a plotting routine.
[ON]+C This will initiate a Warmstart. You'll lose the stack, but
it will often get you out of a locked up program with memory
intact.
[ON]+D Enters interactive test mode. I won't even atempt to catalog
the various tests and odd jobs available from here. Back up
your own machine and play around. Exit this test mode with
Warmstart, [ON]+C. [Note: See 3.6 for a list of the
interactive tests]
[ON]+E Starts a looping self-test mode. Kinda dull after the first
five minutes, but it keeps a rather solid tempo. Exit with
Warmstart, [ON]+C.
[ON]+4 Cancels repeating alarms.
[ON]+1 Screen dump utility.
[ON]+[+], [ON]+[-] Adjusts display contrast.
[ON]+[SPC] Initiates Coma Mode and clears Warm Start Log. In Coma
mode, all the clocked activity is halted. The battery
power drain as basically the few nanoamperes necessary to
sustain your RAM contents. The Warm Start Log is a
nearly bullet-proof area of memory which keeps track of
the last four hazardous events. View it using the
command, WSLOG. This log is one of the few things not
cleared by a Coldstart. But it is cleared by [ON]+[SPC].
Enter Coma this way if you want to clear the Warm Start
Log, if you are planning to study crystal healing in
Tibet for a few years and want to keep your pirated
version of Tetris alive, or you just have a low power
fetish. Exit Coma mode with the [ON] key (tough to
remember, huh?), and plan to find your stack cleared out.
Two additional notes on this Coma stuff. First, I'm not gonna try to
list the log codes in WSLOG. Sorry! Second, if your machine is on,
and you drop the batteries out, you will _usually_ end up in a coma
mode to preserve power. WSLOG will not be cleared. Instead, you will
find a code 1 entry there. Some people are paranoid and want to be
in Coma when they change batteries, just in case they have a sudden
emergency call from the Prime Minister and don't get back to their
battery change for a half hour. If you are one of these... shall I
say, weenies? No, that would be unprofessional ...users, then I
recommend you use the [ON]+[SPC] entry route, rather than the
kamikaze method of dropping batteries with the machine running.
Myself, I just turn the machine OFF, like the manual says.
Now, a Coma story... sort of. During the G/GX development, I
maintained a small number of units on which I changed ROM chips as
incremental code releases came out. This was so folks like Bill
Wickes and Jim Donnelly could have fully-real hardware to test,
instead of just the EPROM handsets some of you may have seen. We
always backed up anything of importance in the machine before we did
this. But I got into the habit of using [ON]+[SPC] before I opened
up the calculator. Better than half of the time, I could remove the
batteries, open the case, desolder the old surface-mounted ROM chip,
solder down a new chip, and reassemble the machine... with all of RAM
intact! When I pressed [ON], I'd come right back up with no Try to
Recover Memory? prompt. Pretty good, huh? The folks who put that
mode into the machine certainly weren't in a coma.
--(end quote)--
******************************************************************
3.6 What are the different interactive self-tests?
Pressing ON-D enters the interactive self test function of the HP48.
When you first press ON-D, you will see 3 vertical lines, one on each
side of the screen and one in the middle. The tests are as follows:
Press ON-C to exit.
[A] Displays CPU speed
[B] LCD test. Press Enter to cycle through the tests
[C] Internal ROM test
[D] Internal RAM test
[E] Keyboard test. Starting with [A], press all the keys in order,
left to right, top to bottom. If all goes well, it will say
KBD1 OK
[F] Partial Keyboard test
[G] ESD test monitor. Battery status is shown by bars.
[H] UART loop-back test
[I] Wired UART echo
[J] Shows whats plugged in. Press any key a few times
[K] Test RAM cards in ports
[L] Blanks display
[M] Sends system time from IR port
[N] Receives system time from IR port (have another HP send it)
[O] IR loop-back test
[P] IR UART echo
[S] Shows test start time
[T] Shows test fail time
[U] [V] [W] [X] [Y] [Z] Looping test
[ENTER] Initialize test tims
[DEL] Test summary
[<-] (backspace) Enters memory scanner (SX)
******************************************************************
3.7 I can't account for some of the RAM in the HP 48! and
When I clear my memory, I don't have 32K free! Why?
The HP48 S/SX/G have 32K base memory, and the GX has 128K. However
not all this memory is available to the user. The operating systems
uses memory for system variables, flags, fonts, last stacks, last
arguments, last menus, and such. It also can be any one of a number
of things:
1). Enabling the use of LAST STACK, LAST ARG, LAST CMD, etc., uses
up extra RAM, as the calculator has to keep track of the last
stack, arguments, command, etc.. This is particularly important
with LAST STACK if you have a large/complex stack, as the HP 48SX
has to keep enough information around to recreate the stack after
each operation. You can clear out these variables by pressing ON-C
(but also note that this will clear out the stack, the graphics
PICT, etc.).
2.) From William Wickes, a member of the HP 48 development team:
Here's a candidate for "most obscure way to use up memory on the HP 48SX."
When a program executes DOERR with a string argument, the string and hence
the program too if the string is embedded in the program are referenced
for the sake of the ERRM command. Thus if you purge the program, the
memory used by the program is not reclaimed until the ERRM reference is
updated to a new string. If the string is in a port, you will get
the Object In Use error if you try to purge the library or backup object
containing the string.
A system halt prior to a PURGE will not help unless the object is in
port 1 or port 2 (it will reclaim memory held by a successfully purged
but still referenced object). For port 0 objects, the only way to
break the reference is to execute DOERR again with a new string.
3.) Occasionally, I have had problems with libraries disappearing, but
still taking up memory. I found that an "ON-A-F" reset will cause these
libraries to re-appear. If you still cannot account for a large chunk of
memory, I would suggest a hardware reset, after backing up your memory.
******************************************************************
3.8 What are the best methods for dealing with libraries?
To install a Library:
1. Download it into a variable of the calc.
2. Place the library on the stack.
3. Type the number of the port in which you want to store the
library in. 0 is appropriate if you do not have any expansion
cards.
4. Press STO to store the library in that port.
5. Turn the calculator off and then on, or press ON-C, to finish
installation of the library.
NOTE: sometimes you have to purge the variable containing the library
before storing it in a port, if you are low on memory. As well, if
you have FXRECV installed. Just type a port number, hit FXRECV and
the library will automatically go into the specified port. All you
have to do then in turn the calc off and then on to complete
installation.
To delete a Library:
Say you have library 1234 in port 0 than you want to delete.
1. Goto directory that the library is attached. Usually HOME.
2. Enter :0: 1234
3. Press ENTER or type DUP
4. Type "DETACH"
5. Type "PURGE"
******************************************************************
3.9 Why does (1/3)*3 equal 0.999999999999?
This is due to the way numbers are typically represented by
computers and calculators. There are infinitely many numbers, like
`1/3' and `pi', that cannot be exactly represented internally (their
decimal representations go on forever, and oftentimes cannot even be
represented as a fraction, as in the example of `pi'). As a result,
any calculations that use these numbers are bound to be off.
******************************************************************
3.10 Why does my HP say that 0^0=1?
Some claim that 0^0 is defined as 1, some claim it is indeterminate.
The HP mathematicians decided to use the definition. Here is some
more concrete info shamelessly lifted from the Sci.Math-FAQ:
Q: What is 0^0 ?
A: According to some Calculus textbooks, 0^0 is an "indeterminate
form". When evaluating a limit of the form 0^0, then you need
to know that limits of that form are called "indeterminate forms",
and that you need to use a special technique such as L'Hopital's
rule to evaluate them. Otherwise, 0^0=1 seems to be the most
useful choice for 0^0. This convention allows us to extend
definitions in different areas of mathematics that otherwise would
require treating 0 as a special case. Notice that 0^0 is a
discontinuity of the function x^y.
Rotando & Korn show that if f and g are real functions that vanish
at the origin and are _analytic_ at 0 (infinitely differentiable is
not sufficient), then f(x)^g(x) approaches 1 as x approaches 0 from
the right.
From Concrete Mathematics p.162 (R. Graham, D. Knuth, O. Patashnik):
"Some textbooks leave the quantity 0^0 undefined, because the
functions x^0 and 0^x have different limiting values when x
decreases to 0. But this is a mistake. We must define
x^0 = 1 for all x,
if the binomial theorem is to be valid when x=0, y=0, and/or x=-y.
The theorem is too important to be arbitrarily restricted! By
contrast, the function 0^x is quite unimportant."
Published by Addison-Wesley, 2nd printing Dec, 1988.
References:
H. E. Vaughan, The expression '0^0', Mathematics Teacher 63 (1970),
pp.111-112.
Louis M. Rotando & Henry Korn, "The Indeterminate Form 0^0",
Mathematics Magazine, Vol. 50, No. 1 (January 1977), pp. 41-42.
L. J. Paige, A note on indeterminate forms, American Mathematical
Monthly, 61 (1954), 189-190; reprinted in the Mathematical
Association of America's 1969 volume, Selected Papers on Calculus,
pp. 210-211.
******************************************************************
3.11 If I add two temperatures like 34 deg.F and 11 deg.F, I get 504.67
deg.F. Why don't I get 45 deg.F?
This occurs with the S/SX only. This behavior changed in the
G/GX. With the G/GX, adding 34 deg.F and 11 deg.F will give 45
deg.F using TINC and TDELTA. However, the G/GX will only add or
subtract temperatures if the units are the same; it is now an error
if they are not.
If the units attached to the number consists only of a temperature and
nothing else, operations are done using an absolute temperature scale
(relative to absolute zero). If the units consists of a temperature
and something else, such as degrees/minute, the operation will not be
done using an absolute temperature scale.
It also does not make any physical sense to add two temperatures. You
can't add a cup of water at 20 degrees C to a cup of water at 30
degrees C and end up with two cups of water at 50 degrees C.
******************************************************************
3.12 How can I add my own units? What's the 1_? unit for?
[Note: Some later editions of the G/GX series manuals have some
similar information on this subjet on pages 10-14 and 25-15.]
Another feature is the generic unit, 1_?. It seems to be intended
as a generic unit, to allow you to make new units not based
upon any of the built-in ones. You could use it to create a
conversion utility for currencies or bits and bytes. [Before you
create either, check the FTP sites to see what others have done in
this regard.]
Here's an example. Convert this using ASC\-> and save it as 'sample'.
"69A20FF78E000000005046F6E6574750ADA209C2A2C2A2070000F368B01B2130
E20005046F6A756E650ADA20339201000000000000210C2A20F000046F6E6574
768B01B2130640005086F6D6562750ADA20339200000000000000510C2A20F00
0046F6E65747C2A20B0000D696E686B0168B01B2130B5000303435453047A204
7A20C2A20F000046F6E65747ADA209C2A2C2A20F000046F6E6574768B01B2130
B213047A20C2A20F000046F6A756E6ADA209C2A2C2A20F000046F6A756E668B0
1B2130B213047A20C2A20F000086F6D65627ADA209C2A2C2A20F000086F6D656
2768B01B2130B2130B2130F0DA"
This is a sample directory with a custom menu. Enter the directory
and press the CST key. Here you will see three units (truncated to
fit the softkeys): donut, dozen, and homer. A dozen is defined as
12_donut, and a homer is a rate of 1.5_donut/min (not part of the SI
system). These units may take SI prefixes described on page 10-5 of
the User's Guide, so you may convert the value of 3_MW*h/kdonut into
units of erg/mdozen using CONVERT, for example. The items in the CST
menu have the usual abilities of unit menu objects as described on
pages 10-2 and 10-3 of the User's Guide. These units can be used for
math operations described on page 10-7 of the User's Guide, such as
adding 2_donut to 1_dozen.
Example: At your power plant, you have four control room operators
who have a combined consumption rate of 2.28 homers. How many donuts
will they use in 5 minutes and 17 seconds?
Step 1: Enter the rate.
2.28 [homer]
Step 2: Enter the time.
right-shift UNITS [TIME]
5 [min]
17 [s] +
Step 3: Multiply the time by the rate.
x
Step 4: Convert to dozens.
CST left-shift [dozen]
And the answer is a little over 1.5 dozen.
[If you know more about 1_? and what it can do, please let the FAQ
maintainer know!]
******************************************************************
3.13 I want `pi' to be a numeric value, not a symbol. What's happening?
You are using "Numeric Constants Mode". To turn this mode on or off:
SX: Type "-2", then "SF" (w/o the quotes). This turns the numeric constants
mode on. To turn it off, type "-2" "CF". (again, no quotes)
GX: Go to the MODES menu (press green/right-shift MODES). Hit the key for
FLAG submenu. Toggle the 02 flag, "Contant -> symb", to turn on and
off.
******************************************************************
3.14 What are those little numbers near the top of my screen and how do I
get rid of them?
The little numbers are "user flags". When you or a program sets any
of the user flags 1 through 5, little numbers corresponding to the
set flags are displayed at the top of the screen.
The HP uses negative flags for setting various modes and functions,
while positive flags were reserved for the use of the user. To set a
user flag type the number, then SF. To clear a user flag type the
number, then CF.
******************************************************************
3.15 What tricks are there for manipulating matrices?
SX: You can build up a matrix by rows using \GS+
You can take a matrix apart by rows using \GS-
These two commands (\GS is Sigma (Greek E)) add and subtract rows
from the SigmaDAT Statistics matrix. \GS+ takes a vector row and
adds it to SigmaDAT, and \GS- takes the bottom row away from
SigmaDAT. \GS+ is accessible from the STAT menu with its own
softkey. \GS- can be obtained by pressing left/shift /GS+, or by
typing it in at the command line.
GX: The GX has many matrix functions built in. See Appendix C.
******************************************************************
3.16 Can I use my HP48 as a remote or phone dialer?
There are numerous programs available for remote control. See
Appendix I for recommendations.
To make phone dialing tones, you need to produce two simultaneous
tones. The speaker in the HP48 is not good enough to support the DTMF
(dual tone multi frequency) tones that are used to dial. (They're a
combination of two tones at the same time.)
******************************************************************
3.17 I could speed up my HP-28S. How can I speed up my HP 48?
You can't, really. Unlike the HP-28S, the clock speed in the HP
48SX is hardwired to 2 MHz, and to 4MHz in the 48GX.
However, in some cases, you can speed up the HP 48 by turning off
the display refresh, which supposedly takes up about 11% of the CPU
time. Detlef Mueller <detlef@mwhh.hanse.de> submitted a program to
comp.sources.hp48 that turns off the display refresh. Look in the
various HP 48 archives for a copy.
******************************************************************
3.18 What is the hidden directory and how do I access it?
The "hidden directory" is a subdirectory of the HOME directory.
It is created on startup, and it contains variables with your
alarms and user key configurations. You can use the hidden
directory to store whatever you want, however you CAN NOT ORDER
the contents of this directory, as this causes memory loss.
The name of the hidden directory is a null character, '' .
The only way to get a null character is to use a syseval.
You can use the following program to access the hidden
directory: Comments:
<< HOME (changes to home dir)
#15777h (syseval to get null character)
SYSEVAL (returns '' to stack)
EVAL >> (changes to hidden dir)
To exit the hidden directory, use HOME or UPDIR. This will
return you to the HOME directory.
Also, by putting the null character as a part of your HOME
custom directory, you can switch right into the directory
by pressing the softkey.
Note: The SysRPL command NULLID returns a null character to
the stack; it is the sames as #15777h SYSEVAL.
******************************************************************
3.19 How can I recall one object from a memory archive?
[Joe Horn]
There is a little-known method of recalling objects from within
archives. Just make a list representing the PATH to the object, and
tag the *list* with the port number. Then hit RCL or EVAL.
For example, if your archive in port 1 is called BKUP, and it
contains a directory called GAMES which contains a program
called REVERSI, you can run the game directly (without having
a separate copy of REVERSI stored anywhere!) by:
:1: { BKUP GAMES REVERSI } EVAL
Or, you can RCL instead of EVAL, and it'll be pushed onto the stack.
NOTE WELL: This method only works in ports 0 and 1 in a GX. It works
on any port in the SX.
ANOTHER NOTE: This method works with directory objects stored as
backup objects, as well as with the results of the ARCHIVE command,
because they are both really the same thing.
******************************************************************
3.20 How do I take the logarithm of a base other than 10 or e?
To take the log of a number other than base 10 or e, say log x base y,
you use the formula:
ln x
-------- where ln is natural log (log works too)
ln y
A quick program to do it would be:
<< SWAP LN SWAP LN / >>
with the input of
2: x
1: y
******************************************************************
END PART 1 OF 4
--
Keith Maddock--madd0118@nova.gmi.edu--HomePage:http://www.gmi.edu/~madd0118
"Of course I'm crazy, but that doesn't mean I'm wrong. I'm mad but not ill"
GMI Engineering & Mgt Inst: So2,ME-Auto, Flint, MI/Freightliner Corp,PDX,OR
comp.sys.hp48 FAQ Maintainer (GX-R), Eagle Scout, Delta Tau Delta EI-B, :-)
Make REAL money with your website!
The entire AOH site is optimized to look best in Firefox® 2.0 on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2008 AOH
We do not send spam. If you have received spam bearing an artofhacking.com email address, please forward it with full headers to abuse@artofhacking.com.
