>>>>>>>>>>>>>>>>>>>>>>>>> hp41
============================================================
Model: -41C
General:
Name: Handheld Computer
Code-Name: Coconut
Family: Coconut
Logic: RPN
Features: scientific, programmable
Firsts: Coconut, alpha, ports, user keyboard
Introduction:
Date: 1979-07-01
Price: $295
Discontinuation:
Date: 1985-01-01
Price: $195
Production-Run: 1.5 million (all types)
Display:
Type: LCD, 17 segments
--
|\/|
-- .
|/\|.
-- ,
Size: 1 line x 12 chars
Number-Formats: sign, 10 mantissa
sign, 8 mantissa, ., exp sign, 2 exp
Annunciators: BAT low battery
USER user mode active
GRAD grads mode
RAD radians mode
SHIFT shift key pressed
0 flag 0 set
1 flag 1 set
2 flag 2 set
3 flag 3 set
4 flag 4 set
PGRM program mode
ALPHA alpha keyboard active
Data:
User-Visible:
Smallest: 1E-99
Largest: 9.999999999E99
Signif.-Digits: 10
Internal:
Smallest: 1E-99
Largest: 9.999999999E99
Signif.-Digits: 10
Data-Types-and-Sizes: real, 7 bytes, high nybble of 0 or 9
alpha, 7 bytes (6 chars), high nybble of 1
Memory:
Named-Registers: X, Y, Z, T, Last x, Alpha (24 chars), 00-99
Flags: 56, of which 0-31 are user and 32-55 are
system (and can only be affected indirectly)
0-4 show annunciator when set
11 auto execution
12 print double wide
13 print lower case
14 card reader allow overwrite
15 HPIL printer: 0)manual 1)normal
2)trace 3)trace w/stack print
17 record incomplete
18 IL interrupt enable
21 printer enabled
22 numeric input available
23 alpha input available
24 ignore range errors
25 ignore any errors & clear
26 audio output is ignored
27 user mode is active
28 radix mark: 0). 1),
29 digit groupings shown: 0)no 1)yes
30 catalog set
31 date mode: 0)M.DY 1)D.MY
32 IL man I/O mode
33 can control IL
34 prevent IL auto address
35 disable auto start
36 number of digits, 0-15
40 display format: 0)sci 1)eng 2)fix
3)fix/eng mode)
42 angle mode: 0)deg 1)rad 2)grad 3)rad
44 continuous on
45 system data entry
46 partial key sequence
47 shift key pressed
48 alpha keyboard active
49 low battery
50 set when a message is displayed
51 single step mode
52 program mode
53 IL I/O request
54 set during pause
55 printer exists
Register-Usage: (status registers)
0 T
1 Z
2 Y
3 X
4 L
5 M,[ alpha, chars 7-1
6 N,\ alpha, chars 14-8
7 O,] alpha, chars 21-15
8 P,^ scratch; alpha, chars 24-22
9 Q,_ scratch
10 |-,t unshifted key assignments;
scratch
11 a return stack, levels 6-3b
12 b return stack, levels 3a-1; pc
13 c statistics ptr; scratch;
169; R00 pointer; .END. ptr
14 d flags
15 e shifted key assignments;
scratch, program line number
(default assignment; can be changed)
R11 \GSx
R12 \GSx^2
R13 \GSy
R14 \GSy^2
R15 \GSxy
R16 \GSn
Numbered-Registers: 64
Program-Steps: 000-999
Program-Editing: insert
Program-Display: alpha
User-RAM-Bytes: 560
Total-RAM-Bytes: maximum is 16 status registers, 64
built-in registers, 4 64-register memory
modules or 2,352 bytes; in addition,
there can be extended memory totalling
127 + 2 * 238 registers or 4,221 bytes;
total memory can thus be 6,573 bytes
ROM-Bytes: 12K (10-bit words)
Machine-State: status regs
stack lift enable
memory
File-Types: data, text, program (see LIF)
Physical:
Technology-Used: ?
Processor: Nut
Chip-Count: CPU, 1-3 ROMs, RAM(s), display driver,
power supply, timer (-CX only)
old -C and -CVs use 3, 40 Kbit ROMs
newer -C and -CVs use 1, 120 Kbit ROM
-CX uses 2, 120 Kbit ROMs
early -Cs use 5 RAMs, each with 16 registers
newer units use one 16 register RAM, and N 64 register RAMs
Power-Source: 4 1.5V N cells
Continuous-Memory: yes
Expansion-Ports: 4
I/O-Ports: beeper (HP-IL, card reader, printer, etc.
available for expansion ports)
Clock: no
Length: 14.27 cm
Width: 7.86 cm
Height: 3.33 cm
Weight: 205 g
Temperature-Range:
Operating: 0 to 45 deg C
Charging: -
Storage: -20 to 65 deg C
Keyboard:
Switches: ON \ each side of a single,
USER / dual rocker wipe
PRGM \ each side of a single,
ALPHA / dual rocker wipe
Shift-Keys: gold, gold, above
alpha, white, below on face
User-Defined-Keys: all
Key-Arrangement::
** ** ** ** **
** ** ** ** **
** ** ** ** **
***** ** ** **
* *** *** ***
* *** *** ***
* *** *** ***
* *** *** ***
Key-Labels-Base-Keyboard::
\GS+ 1/x \v/x LOG LN
x<>y Rv SIN COS TAN
[] XEQ STO RCL SST
ENTER^ CHS EEX <-
- 7 8 9
+ 4 5 6
x 1 2 3
\:- 0 . R/S
Key-Labels-gold-gold-above::
x 2 x x
\GS- y x 10 e
-1 -1 -1
CL\GS % SIN COS TAN
[] ASN LBL GTO BST
CATALOG ISG RTN CLx/A
x=y? SF CF FS?
x\<=y? BEEP P->R R->P
x>y? FIX SCI ENG
x=0? \pi LASTx VIEW
Key-Labels-Alpha-White-Below-On-Face::
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 = ?
: SPACE , []
Key-Labels-Alpha-Shifted-Not-Shown::
a b c d e
\GS % \=/ < >
[] |- ASTO ARCL BST
\^| \<) $ CLA
- 7 8 9
+ 4 5 6
* 1 2 3
/ 0 . AVIEW
Programmable-Operations::
% percent
%CH percent change
+ addition
- subtraction
0-9, . enter digit or decimal point
1/X inverse
10^X common exponent
ABS absolute value
ACOS arc cosine
ADV paper advance
AOFF alpha keyboard off
AON alpha keyboard off
ASHF alpha shift
ASIN arc sin
ASTO %%% alpha store
ATAN arc tangenet
AVIEW alpha view
BEEP beep
CF 00-29 clear flag
CHS change sign
CLA clear alpha
CLD clear display
CLRG clear registers
CLST clear stack
CLX clear x
CL\GS clear summation registers
COS cosine
D-R convert degrees to radians
DEC convert octal to decimal
DEG set degrees mode
DSE %%% decrement and skip if equal
EEX enter exponent
END end program
ENG 0-9 engineering notation
ENTER^ enter
E^X natural exponent
E^X-1 natural exponent - 1
FACT factorial
FC? 00-55 is flag clear
FC?C 00-29 is flag clear and clear
FIX 0-9 fixed notation
FRC fractional part
FS? 00-55 is flag set
FS?C 00-29 is flag set and clear
GRAD set grads mode
GTO label goto
HMS convert decimal hours to H.MS
HMS+ add two times in H.MS notation
HMS- subtract two times in H.MS notation
HR convert H.MS to decimal hours
INT integer part
ISG %%% increment and skip if greater
LASTX recall last x
LBL label label
LN natural logarithm
LN1+X natural logarithm + 1
LOG common logarithm
MEAN compute average
MOD modulus
OCT convert decimal to octal
OFF turn off
P-R convert polar to rectangular
PI constant pi
PROMPT display a prompt
PSE pause
R-D convert radians to degrees
R-P convert rectangular to polar
R/S run / stop
RAD set radians mode
RCL %%% recall
RDN roll down
RND round
RTN return
R^ roll up
SCI 0-9 scientific notation
SDEV standard deviation
SF 00-29 set flag
SIGN sign of number
SIN sine
SQRT square root
ST+ %%% storage arithmetic
ST- %%% storage arithmetic
STO %%% store
STOP stop
STx %%% storage arithmetic
ST\:- %%% storage arithmetic
TAN tangent
TONE 0-9 tone
VIEW %%% view
x multiplication
X<0? comparison test
X<> %%% swap X and register
X<>Y swap
X0? comparison test
X>Y? comparison test
XEQ label subroutine call
XROM ###,### xrom call
X\<=0? comparison test
X\<=Y? comparison test
X\=/0? comparison test
X\=/Y? comparison test
X^2 square
Y^X exponentiation
\:- division
\GS+ summation plus
\GS- summation minus
\GSREG 00-99 set summation register
\GSREG? what is summation register pointer
|- append
%%% is a register designator; it can be 00-99,X,Y,Z,T,L. It can also
have a leading . (displays as IND) which designates indirection.
Non-Programmable-Operations::
<- clear digit or entry
ALPHA toggle alpha mode
ASN assign user key
BST back step
CAT 1-3 catalogs: 1) user programs, 2) external functions,
3) built-in functions
CLP label clear program
COPY label copy program
DEL 000-999 delete N program line lines
GTO . 000-999 go to line number
GTO . EEX 000-999 go to line number
GTO . label go to label
ON turn on or off
ON + <- clear all memory
PACK pack memory
PRGM toggle program mode
SIZE 000-999 set curtain
SST single step
USER toggle user mode
Menus::
none
Bugs/ROM-Versions::
#1: Early machines did not save X into L when \GS+ and \GS- were done.
#2: Early machines allowed RCL IND nn and STO IND nn when nn was
outside the memory range.
#3: Early machines allowed SF,CF,FS?C, and FC?C IND nn with nn any
number (but not a stack register) 0 to 55.
#4: Early models compute the SIN of small angles incorrectly.
#5: CLP would only clear 1089 program lines.
#6: -67A/-97A prorams that contain combinations of number entry, EEX,
and CHS do not translate correctly. Example:
EEX CHS 7 CHS 5
translates to
E-7-5
instead of
1E-7 -5
#7: The second nybble of the seventh byte of Alpha is copies along
with the first six bytes during an ASTO.
#8: Early machines do not decompile programs if they are turned off
during PRGM mode.
#9: Executing CAT 1 while in PRGM mode, then interrupting it with R/S
causes step labelling oddities.
#10: If flag 25 is set and MEAN or SDEV causes an overflow, some flags
can be altered.
#11 (CW1): If a program at the end of CAT 1 is replaced or deleted, a
return to that program will return into the new program or off-program
memory.
#12: On early models, the function LN(1+X) gives wrong answers for
values of X between -.9990234374 and -1.00.
#13: On early models, the operation (.1)^-43 gives an answer of
9.999999999E42 instead of 1E43.
ROM Versions:
version date codes comments
DDE 1926-1940 all bugs
FDE 1936-1952 #3 removed
FEE 1951-2034 #1,#2,#4 removed
GFF 2035-84?? #5,#7,#8 removed, first -41CV version
HFF 84??-present current -41CV version
NFL 2329-present current -41CX version
Notes::
Probably the most popular HP handheld ever made. Huge amounts have
been written about this machine. An excellent detailed reference is
"Extend Your HP-41" by Wlodek (W.A.C.) Mier-Jedrzejowicz, Synthetix:
Berkeley, California, 1985..
price changes:
1981-01-01 $250
1982-11-01 $195
Jeremy Smith's price list also lists:
-41CC introduced 1981-01-15 at $495, discontinued 1981-06-01.
-41CS introduced 1981-01-15 at $840, discontinued 1981-06-01.
I expect that these are packages that include accessories.
Battery current:
mode typical worst
run 10 mA 15 mA
standby 1 mA 1 mA
sleep 10 uA 30 uA
============================================================
Model: -41CV, differences from -41C
General:
Code-Name: Silverbird
Firsts: none
Introduction:
Date: 1980-12-15
Price: $325
Discontinuation:
Date: 1990-11
Price: $175
Production-Run: ?
Memory:
User-RAM-Bytes: 2,352
Notes::
Same as a -41C but with four memory modules already built in. The "V"
stands for 5 times as much memory.
price changes:
1982-11-01 $275
1984-08-01 $225
1986-02-01 $175
============================================================
Model: -41CX, differences from -41C
General:
Code-Name: Honeynut
Firsts: none
Introduction:
Date: 1983-10-1
Price: $325
Discontinuation:
Date: 1990-11
Price: $249
Production-Run: ?
Memory:
User-RAM-Bytes: 3,241
ROM-Bytes: 24K (10-bit words)
Physical:
Clock: time of day, stopwatch, alarms
Programmable-Operations::
% percent
%CH percent change
+ addition
- subtraction
0-9, . enter digit or decimal point
1/X inverse
10^X common exponent
ABS absolute value
ACOS arc cosine
ADATE date to alpha
ADV paper advance
ALENG length of alpha
ALMCAT alarm catalog
ALMNOW activate oldest alarm
ANUM number in alpha to x
AOFF alpha keyboard off
AON alpha keyboard off
APPCHR append char to record
APPREC append record to file
ARCL %%% recall alpha
ARCLREC append record to alpha
AROT rotate alpha
ASHF alpha shift
ASIN arc sin
ASROOM bytes available in file
ASTO %%% alpha store
ATAN arc tangenet
ATIME time to alpha
ATIME24 time in 24 hour clock to alpha
ATOX left byte of alpha to x
AVIEW alpha view
BEEP beep
CF 00-29 clear flag
CHS change sign
CLA clear alpha
CLALMA clear alarm in alpha
CLALMX clear alarm in x
CLD clear display
CLFL clear file
CLK12 12 hour clock mode
CLK24 24 hour clock mode
CLKEYS clear keys
CLKT display time
CLKTD display time and date
CLOCK display running clock
CLRALMS clear alarms
CLRG clear registers
CLRGX clear registers according to x
CLST clear stack
CLX clear x
CL\GS clear summation registers
CORRECT correct the time
COS cosine
CRFLAS create text file
CRFLD create data file
D-R convert degrees to radians
DATE return the current date
DATE+ add the number of days in X to date in Y
DDAYS compute the number of days between two dates
DEC convert octal to decimal
DEG set degrees mode
DELCHR delete char from record
DELREC delete record from file
DMY set D.MY mode
DOW figure the day of the week for a date (0=Sunday)
DSE %%% decrement and skip if equal
ED invoke editor
EEX enter exponent
EMDIR extended memory directory
EMDIRX extended memory directory of Xth file
EMROOM room in extended memory
END end program
ENG 0-9 engineering notation
ENTER^ enter
E^X natural exponent
E^X-1 natural exponent - 1
FACT factorial
FC? 00-55 is flag clear
FC?C 00-29 is flag clear and clear
FIX 0-9 fixed notation
FLSIZE return file size
FRC fractional part
FS? 00-55 is flag set
FS?C 00-29 is flag set and clear
GETAS get file
GETKEY get a key
GETKEYX get a key timed
GETP get program
GETR get registers
GETREC get record
GETRX get a registers according to X
GETSUB get a subroutine
GETX get a register
GRAD set grads mode
GTO label goto
HMS convert decimal hours to H.MS
HMS+ add two times in H.MS notation
HMS- subtract two times in H.MS notation
HR convert H.MS to decimal hours
INSCHR insert a char into a record
INSREC insert a record into a file
INT integer part
ISG %%% increment and skip if greater
LASTX recall last x
LBL label label
LN natural logarithm
LN1+X natural logarithm + 1
LOG common logarithm
MDY set M.DY mode
MEAN compute average
MOD modulus
OCT convert decimal to octal
OFF turn off
P-R convert polar to rectangular
PASN programmable key assingment
PCLPS programmable clear program
PI constant pi
POSA find position in alpha
POSFL find position in file
PROMPT display a prompt
PSE pause
PSIZE program size
PURFL purge file
R-D convert radians to degrees
R-P convert rectangular to polar
R/S run / stop
RAD set radians mode
RCL %%% recall
RCLAF recall clock accuracy
RCLALM recall alarm
RCLFLAG recall flags
RCLPT recall file pointer
RCLPTA recall file pointer according to alpha
RCLSW recall stopwatch
RDN roll down
REGMOVE move register block
REGSWAP swap register block
RESZFL change file size
RND round
RTN return
RUNSW run stopwatch
R^ roll up
SAVEAS save text file
SAVEP save program
SAVER save registers
SAVERX save registers according to x
SAVEX save a register
SCI 0-9 scientific notation
SDEV standard deviation
SEEKPT see a file
SEEPTA see a file according to alpha
SETAF set clock accuracy factor
SETDATE set date
SETIME set time
SETSW set stopwatch
SF 00-29 set flag
SIGN sign of number
SIN sine
SIZE? what is curtain
SQRT square root
ST+ %%% storage arithmetic
ST- %%% storage arithmetic
STO %%% store
STOFLAG store flags
STOP stop
STOPSW stop the stopwatch
STx %%% storage arithmetic
ST\:- %%% storage arithmetic
SW invoke the stopwatch
SWPT set stopwatch register pointer
T+X adjust clock
TAN tangent
TIME return the current time
TONE 0-9 tone
VIEW %%% view
x multiplication
X<0? comparison test
X<> %%% swap X and register
X<>F swap X and flags
X<>Y swap
X0? comparison test
X>NN? comparison test
X>Y? comparison test
XEQ label subroutine call
XROM ###,### xrom call
XTOA x to left byte of alpha
XYZALM set specified alarm
X\<=0? comparison test
X\<=NN? comparison test
X\<=Y? comparison test
X\=/0? comparison test
X\=/NN? comparison test
X\=/Y? comparison test
X\>=NN? comparison test
X^2 square
Y^X exponentiation
\:- division
\GS+ summation plus
\GS- summation minus
\GSREG 00-99 set summation register
\GSREG? what is summation register pointer
|- append
Non-Programmable-Operations::
CAT 1-6 catalogs: 1) user programs, 2) external functions,
3) built-in functions, 4) EMDIR, 5) ALMCAT, 6) user keyboard
Notes::
Same as a -41C but with four memory modules, a Time Module, an
Extended Functions / Extended Memory Module, and assorted
miscellaneous functions built in.
"Halfnut" is the code name for a redesigned version of the -41C
internals. Externally and functionally it is identical to the other
machines. It was so called because the processor board was only half
the size of the original design.
price changes:
1986-02-01 $249
============================================================
Model: -41opt1, differences from -41C
General:
Code-Name: Blanknut
Firsts: none
Introduction:
Date: 1981-3-24
Price: $325
Discontinuation:
Date: ?
Price: ?
Production-Run: ?
Notes::
HP-41 Opt 001: This is the same machine as a -41C, but with few of the
keys labelled.