Model: 38G
General:
Name: Graphics Calculator
Code-Name: Elsie
Family: Student
Logic: expression
Features: scientific, programmable, date
arithmetic, hyperbolics, complex
matrix, vector, lists, solver
(algebraic), symbolic math, symbolic
integration, differentiation,
plotting, graphics
Firsts: hard cover, split screen, ApLets,
implied multiplication, numeric table view
of equations, hang tag box, cardboard
packaging
Introduction:
Date: 1995-04-06
Price: $118
Discontinuation:
Date: <2003-01-01
Price: ?
Production-Run: ?
Display:
Type: LCD, bit-mapped
Size: 8 lines x 22 chars, 64 x 131 pixels
Number-Formats: sign, 12 mantissa, ., exp sign, 2 exp
see data types
Annunciators: <\ shift active
\Ga alpha keyboard active
((.)) alarm has gone off or low battery
hourglass busy
/\
--> transmitting data
\/
Data:
User-Visible:
Smallest: 1E-499
Largest: 9.99999999999E499
Signif.-Digits: 12
Internal:
Smallest: 1E-49999
Largest: 9.99999999999999E49999
Signif.-Digits: 15
Data-Types-and-Sizes: subset of the HP48G series
Memory:
Named-Registers: A..Z, \GT real
C0..C9 statistics data
E0..E9 equations
F0..E9 functions
G0..G9 GROBs
L0..L9 list
M0..M9 matrix
R0..R9 polar
S1fit..S5fit statistics
U1..U5 sequences
X0..X9 parametrics
Y0..Y9 go with X...
Z0..Z9 complex
Flags: -17 to -18 trig mode 0)degrees
1)radians 2)grads
-45 to -48 set number of digits
-49 to -50 display format 0)STD 1)SCI
2)FIX 3)ENG
-51 fraction mark comma
Register-Usage: see below
Numbered-Registers: none
Program-Steps: memory
Program-Editing: insert or replace
Program-Display: alpha
User-RAM-Bytes: 32K (~22K available)
Total-RAM-Bytes: 32K
ROM-Bytes: 512K
Machine-State: stack
user memory
named programs
File-Types: none
Physical:
Technology-Used: CMOS
Processor: Yorke (00048-80063, 4 MHz)
Chip-Count: 5 (Yorke CPU, 2x KS0104 (display column
driver), 512K ROM (labelled
"ELSIE OTP Rev 1.67", version may change),
32K RAM)
Power-Source: 3 AAA cells
Continuous-Memory: yes
Expansion-Ports: 0
I/O-Ports: 4-wire serial, I/R I/O, beeper,
overhead display out (on rest of 10 pins
in the serial connector)
Clock: yes
Length: ?
Width: ?
Height: ?
Weight: ?
Temperature-Range:
Operating: 0 to 45 deg C
Charging: none
Storage: -20 to 65 deg C
Keyboard:
Switches: none
Shift-Keys: shift, turquoise, above
alpha, coral, lower right
User-Defined-Keys: 6 menu keys
Key-Arrangement::
** ** ** ** ** **
** ** ** **
** ** ** ** ** **
** ** ** ** ** **
***** ** ** ** **
* *** *** *** ***
* *** *** *** ***
* *** *** *** ***
* *** *** *** ***
Key-Labels-Base-Keyboard::
[] [] [] [] [] []
PLOT SYMB NUM ^
LIB VAR MATH <| v |>
HOME SIN COS TAN X,T,\GT \v/x
y
ENTER ( ) -x x
A..Z 7 8 9 /
[] 4 5 6 *
DEL 1 2 3 -
ON 0 . , +
(The ON key has a coral lower label of CANCEL.)
Key-Labels-Shift-Turquoise-Above::
[] [] [] [] [] []
|-----SETUP-----|
[] [] [] []
VIEWS NOTE SKETCH [] [] []
-1
MODES ASIN ACOS ATAN x n\v/x
2
ANSWER CHARS EEX ABS x
a..z LIST ( ) LOG
x
[] MATRIX [ ] 10
CLEAR NOTEPAD SPACE \pi LN
x
OFF PROGRAM : ; e
Key-Labels-Alpha-Coral-Lower-Right::
[] [] [] [] [] []
[] [] [] []
[] [] [] [] [] []
A B C D E F
[] G H I J
[] K L M N
[] O P Q R
[] S T U V
[] W X Y Z
Programmable-Operations::
basic operations not listed
Undocumented or imperfectly-documented operations:
@...@ enclose comments
helpwith ... provides minimal help on a command
rules names of the design team members
syseval ###(decimal)
535863 return amount of free memory
535393 send a Kermit "Finish"
version shows ROM version
libeval 171;0 shows ROM version
Non-Programmable-Operations::
Replace the contents of G0 with the current screen graphic (i.e., do a
screen dump) by:
press ON
press PLOT
release ON
release PLOT
Menus::
not listed
Bugs/ROM-Versions::
Initial versions are
Libeval 171;0
Version HP38-A1.67
Copyright HP, 1993,95
Version
Version HP39-A
Copyright HP,
1993,95
Notes::
[ Someone want to volunteer to fill in the above not listed items? ]
"Elsie" refers to a cow used in the advertising of a major food chain
(presumably Borden).
Announced Apr 6-8 1995 at the National Council of Teachers of
Mathematics (NCTM) 75th annual conference in Boston MA. A special
edition was produced for this conference.
"ApLet" expands to "Animated Personal LEarning Tool".
Rumor: the product number (38) was chosen to be a combintion of 32 and
48. If so, this will be a "doubly referential" product number reference
(see the Notes section on the 48SX).
Serial communications is a little tangled.
- Selecting "HP 38G" selects I/R. It uses an (as yet) undocumented
protocol for transferring data between two 38Gs. Xmodem is used as
the basic protocol.
- Selecting "Disk drive..." selects wire. It expects a Kermit server
set up as:
set baud 9600
set parity none
set file collision off
server
- The "Send now" does the send/receive. The "Pick location..." lets you
move around in the server's directory tree.
You can print a graphic image (screen dump) with the HP82240B Infrared
Printer. You do this by first storing the image in a graphic
variable, then doing a PRVAR. See Non-Programmable Operations above.
If one were to take a 38G apart, one could replace the 32KByte RAM
chip with a 128KByte one and it might well work (hint, hint). One
might also kludge up a card connector...
(Later, courtesy of Detlef Mueller, detlef@provi.de) I'm just into
that, both (changes are) impossible w/o further modifications and a
new ROM: the build-in 32k memory is mapped to address F0000-FFFFF, a
bigger chip would just do nothing and cause trouble if the RAM is
mapped away temporarily to access the underlaying ROM. Forget about
the card connector, before doing that, I'd suggest to buy a '48GX...
Steve Dunham (dunham@cl-next4.cl.msu.edu) posted the following to
Comp.sys.hp48 on 7 Sep 1995:
Gavin Scott (gscott@netcom.com) wrote:
: It's Algebraic rather than RPN based. This isn't as bad as it sounds.
: You enter an expression the way you would type it in a programming
: language (all on one line, with parenthesis, etc.) and when you press
: ENTER the line is evaluated (and added to the 'stack' in the display
: left-justified), and the result displayed on the 'stack' (right-
: justified).
: There is no compatibility with the 48 series by the way.
: There is bidirectional IR (2 inch range limit), and what looks like
: a 100/200LX style serial connector (but the manual does not tell you
: what it is anywhere that I can find). When you send or receive something
: your only options are to communicate via IR with another 38G (this
: implies no way to communicate with a 48), or to a 'Disk Drive' which
: I would guess means the serial port (I haven't tried plugging in
: anything to see if it might be any kind of standard protocol).
You can transfer some things via IR between the HP38 and HP48.
The protocol used over the IR port on the HP38 is Xmodem. You can
transfer single objects between the calculators, you can't current
transfer Aplets because they are sent in multiple pieces using a
slightly modified Xmodem protocol. The 38 uses a different header, so
the objects end up as strings on the 48. I have a modified version of
the HP48 XSEND routine that will transfer these strings back to the
38. (It works like XSEND, so you have to put an indentifier on the
stack and run my program.) I'll attach it to the end of this message,
because it is fairly small. The normal XRECV will work for receiving
single part objects. If you try to receive a multipart Aplet, you
will only get the first part, which contains a list with the Aplet
name and names of all of the other pieces of the Aplet.
I do intend to write a program that will transfer entire Aplets via IR
between the 48 and 38, but it may take a while, because I have a
serial cable for the 38 already.
Serial communications on the 38 are handled via Kermit. The 38 will
first create/read a file called HP38DIR.000 from the PC, which
contains a table translating object names to MS-DOS filenames. Aplets
are stored in multiple pieces on the PC. You could also transfer via
serial between the 488 and 38 if you make a cable.
HP has given MSU a few of the serial cables (really widgets to convert
a 48 serial cable to a 38 serial cable), making one is rather simple
because (looking at the end of the calculator) the four pins on the
left side of the bottom row on the 38 connector have the exact same
pinout at the four pins on the 48. I've made my own cable from this
info.
. . . . .
. . . . .
\_____/
|
\- These four pins
Transfers done to the PC are done in Ascii mode whenever possible,
transfers done via IR are always in Binary mode.
This brings us to the format of the HP38 header.
All Objects start with the string `HP38' followed by either `Bin' or
`Asc' followed by a single character denoting the type of object being
transfered.
`A' is used for the HP38DIR.000 file, always ASCII mode
`B' is used foor binary Aplet data, which is always transfered in
binary mode
'C' is used for notes sent as a character string
`D' is for User programs on the 38, transfered as a character string
object (Bin mode on IR - ASCII on serial)
`E' is used for list and matrix objects
`I' Is used for the 'index' that is sent as the first object in
a multipart IR transfer.
If you transfer via IR, you will find out that the prolog addresses
for these objects (list, array, real, complex, cstring) are the same
as on the 48.
Following this character, in binary mode, is the body part of an
identifier object i.e. 2 nibbles specifing length and a bunch of
characters. This contains the name of the object. After that is the
object proper. (prolog and all)
In ASCII mode a space, an (ASCII) integer specifying length, space
then the name follow the header.
Within the next couple of days I will be posting my first impressions
of the 38G from the prospective of a 48 user (not the target
audience of the 38).
Have fun making your serial cables,
Steve
dunham@gdl.msu.edu
------------------------------------------------------------
From: "Joseph K. Horn" <JoeHorn@HolyJoe.Net>
Newsgroups: comp.sys.hp48
Subject: 6.0030000004 and 38 and 48
Organization: Holy Smoke Incense Company
Message-ID: <P3c0a.44287$NV.975291@news.direcpc.com>
Date: Wed, 5 Feb 2003 09:42:32 -0800
The slide-on cover of the HP38G (high-school version of the HP48) has the
mysterious number 6.0030000004 molded into the plastic. Its mathematical
meaning has eluded the best and brightest, but not me! It was derived from
the number 48 and 38. I have discovered a simple proof which unfortunately
this newsgroup is large enough to contain:
(190423*ASINH( 48 ) - 148144*ASINH( 38 ))/37911 = 6.0030000004
Golly.
-Joe-
Areas
General
Craig's Articles
Last modified Saturday, 2012-02-25T23:29:40-06:00.