HP-42S#DM42

{{Short description|Scientific calculator by Hewlett-Packard}}

{{Use dmy dates|date=April 2019|cs1-dates=y}}

{{ Infobox Calculator

| name = HP-42S

| image = HP42S.jpg

| caption = HP-42S

| type = Programmable scientific

| entry = RPN

| designfirm =

| manufacturer = Hewlett-Packard

| introduced = 1988

| discontinued = 1995

| processor = Saturn (Lewis)

| precision = 12 display digits (15 digits internally), exponent ±499

| display_type = LCD dot-matrix

| display_size = 2 lines, 22 characters, 131×16 pixels

| prog_lang = RPN key stroke (fully merged)

| memory_step = 7200

| memory_rom = 64 KB of ROM

| ports = IR (Infrared) printing

| supply = 3×1.5 V button cell batteries (Panasonic LR44, Duracell PX76A/675A or Energizer 357/303)

| weight = {{convert|6|oz|g|abbr=on}}

| dimensions = 148×80×15 mm

}}

The HP-42S RPN Scientific is a programmable RPN Scientific hand held calculator introduced by Hewlett-Packard in 1988. It is a popular calculator designed for science and engineering students.

Overview

Perhaps the HP-42S was to be released as a replacement for the aging HP-41 series as it is designed to be compatible with all programs written for the HP-41. Since it lacked expandability, and lacked any real I/O ability, both key features of the HP-41 series, it was marketed as an HP-15C replacement.

The 42S, however, has a much smaller form factor than the 41, and features many more built-in functions, such as a matrix editor, complex number support, an equation solver, user-defined menus, and basic graphing capabilities (the 42S can draw graphs only by programs). Additionally, it features a two-line dot matrix display, which made stack manipulation easier to understand.

Production of the 42S ended in 1995.

Specifications

Image:Hp42s battery compartment.jpeg

File:HP42S Calculator Internal Teardown.jpg

  • Series: Pioneer
  • Code Name: Davinci
  • Introduction: 1988-10-31
  • 64 KB of ROM
  • 8 KB of RAM
  • Functions: Over 350
  • Expandability: Officially no other than IR printing (32 KB memory upgrade and over-clocking hardware{{Citation |title=HP 42S Easy Double Speed / Turbo Mode for Calculator and Programs |url=https://www.youtube.com/watch?v=fYCjhFKgHdo |language=en |access-date=2022-08-05}} hacks are possible)
  • Peripherals: HP 82240A infrared printer

Features

Programming

{{Main|Focal (HP-41)}}

The HP-42S is keystroke-programmable, meaning that it can remember and later execute sequences of keystrokes to solve particular problems of interest to the user. The HP-42S uses a superset of the HP-41CX FOCAL language.

All programs are stored in one continuous program space, and may be created and edited by switching to programming mode, using the {{keypress|PRGM}} key.

Subroutines are enclosed in {{keypress|LBL}}/Label (name of subroutine) and {{keypress|RTN}}/Return ( halts execution unless it is in a subroutine in which case it returns to the caller). Keystrokes (of functions) are enclosed between {{keypress|LBL}} and {{keypress|RTN}} or {{keypress|.END}}.

In a running program, a {{keypress|GTO}}label causes program execution to branch to the specified label and continue running at that line.Executing a GTO instruction from the keyboard moves the program pointer to the corresponding label. No program lines are executed.

{{keypress|XEQ}} is used in much the same way with one important difference: after an {{keypress|XEQ}} instruction has transferred execution to the specified label, the next RTN (return) or END instruction causes the program to branch back to the instruction that immediately follows the XEQ instruction.Programs/Subroutines can also be executed with the help {{keypress|XEQ}}label (Execute) key.

Important difference is that {{keypress|XEQ}} executes the label and returns to previous subroutine and continues execution from the line following {{keypress|XEQ}},whereas {{keypress|GOTO}} branches to the label specified and doesn't return.

{{keypress|GTO}}{{keypress|.}}{{keypress|.}} packs the current subroutines and moves to new program space.{{keypress|GTO}}{{keypress|.}}nnnn can be used to reach a particular line of program.

= Programming examples=

A simple program to calculate area of circle

class=wikitable

! Step

! Instruction

! Comment

00

| { 6-Byte Prgm }

01

| {{keypress|LBL}}{{keypress|A}}{{keypress|R}}{{keypress|E}}{{keypress|A}}

| Start of program "AREA"

02

| {{keypress|INPUT}}{{keypress|R}}

| Prompts for Value of R and stores it in R

03

| {{keypress|X↑2}}

| Squares the value in X register

04

| {{keypress|PI}}

| Puts π on the stack

05

| {{keypress|×}}

| Multiplies values in X and Y register

{{keypress|END}} or {{keypress|RTN}}

| Returns control (and result in X) to either the user or to a calling program.

Program instructions like {{keypress|STOP}}, {{keypress|PROMPT}}, {{keypress|INPUT}} halt the program execution,which can be continued by pressing {{keypress|R/S}}.

{{keypress|VIEW}} is used to view contents of a register,For example R in the above example.

= Using Integral and Equation Solver =

It is necessary to write a program or subroutine that evaluates f(x) for the function which needs to be solved or integrated.

Variables used in program should be declared using {{keypress|MVAR}}

Here is a sample program to solve the equation °F = (9/5×°C) + 32

class=wikitable

! Step

! Instruction

! Comment

00

| { 31-Byte Prgm }

01

| {{keypress|LBL}}{{keypress|T}}{{keypress|E}}{{keypress|M}}{{keypress|P}}

| Start of program "TEMP"

02

| {{keypress|MVAR}}{{keypress|F}}

| Declares F as a variable for solver

03

| {{keypress|MVAR}}{{keypress|C}}

| Declares C as a variable for solver

04

| {{keypress|RCL}}{{keypress|F}}

| Recall F

05

| {{keypress|9}}

|

06

| {{keypress|5}}

|

07

| {{keypress|÷}}

08

| {{keypress|RCL}}{{keypress|C}}

| Recall C

09

| {{keypress|×}}

|

10

| {{keypress

}}
11

| {{keypress|3}}{{keypress|2}}

12

| {{keypress

}}
{{keypress|END}} or {{keypress|RTN}}

| Returns control (and result in X) to either the user or to a calling program.

After, accessing the solver using {{button|Shift}} {{keypress|7}} ({{keypress|SOLVER}} ), select program {{keypress|TEMP}}.

In a similar way, expressions can be integrated. After selecting the variable of integration, enter the lower limit and then press on {{keypress|LLIM}}, similarly input {{keypress|ULIM}} (upper limit) and {{keypress|ACC}} (accuracy).

Emulators

Image:Emu42 emulator.png

HP 42s can be accessed through Android Emulators like Emu42 and Free42.

Image:Hp30bwp34s.jpg

=WP 34s=

WP 34S project uses a modern HP financial calculator HP 30b as the starting point to create an advanced scientific RPN calculator. It is a more powerful scientific (non-graphing) calculator compared to the original HP 42s.https://commerce.hpcalc.org/34s.php

Functionality

  • Euler's Beta and Riemann's Zeta functions, Bernoulli and Fibonacci numbers, Lambert's W, the error function as well as Chebyshev's, Hermite's, Laguerre's and Legendre's orthogonal polynomials, and testing for primality,
  • Many statistical distributions and their inverses like Poisson, Binomial, Geometric as well as Cauchy-Lorentz, Exponential, Logistic, Weibull for reliability analysis, Lognormal and Gaussian with arbitrary means and standard deviations,
  • Programmable sums and products, first and second derivatives

Programmability

  • RPN keystroke programmable à la HP-41 - up to 925 steps in RAM - numeric and/or alpha labels, thousands of steps burnable into flash banks.
  • Externally programmable by developers via JTAG interface

Reference Books

Image:RPN Books.png

Guides and Collections of Keystroke Programs

Documentation for the HP 42S calculator at hpcalc.orghttps://literature.hpcalc.org/allhttps://literature.hpcalc.org/all#model:42S

  • HP-42S Owner's Manual https://literature.hpcalc.org/items/929
  • HP-42S Programming Examples & Techniqueshttps://literature.hpcalc.org/items/934
  • Step-by-Step Solutions: Electrical Engineering (42S)https://literature.hpcalc.org/items/924
  • Step-by-Step Solutions: Mechanical Engineering (42S)https://literature.hpcalc.org/items/927
  • Advanced Circuit Analysis with the HP-42Shttps://literature.hpcalc.org/items/1449
  • An Easy Course in Using the HP-42Shttps://literature.hpcalc.org/items/1459

Educational Texts on RPN calculators

  • Algorithms for RPN Calculatorshttps://literature.hpcalc.org/items/1454
  • Scientific Analysis on the Pocket Calculatorhttps://literature.hpcalc.org/items/1712
  • Engineering Statistics with a Programmable Calculatorhttps://literature.hpcalc.org/items/1533
  • Applied Mathematical Physics with Programmable Pocket Calculatorshttps://literature.hpcalc.org/items/1479
  • Mathematical Astronomy with a Pocket Calculatorhttps://literature.hpcalc.org/items/1663
  • Handbook of Electronic Design and Analysis Procedures using Programmable Calculatorshttps://literature.hpcalc.org/items/1558
  • Calculator Programs for Chemical Engineers(Vol 1 & 2)https://literature.hpcalc.org/items/1536https://literature.hpcalc.org/items/1860

Collection of Algorithms/Keystroke Programs for HP 41/HP 42S

  • Extensive Collection of Physics and Mathematics Programshttps://hp41programs.yolasite.com/
  • Software Library for HP 41 Programs(Compatible with HP 42S)https://www.hpmuseum.org/software/soft41.htm

See also

References

{{reflist|refs=

{{cite web |title=HP-42S |url=http://www.hpmuseum.org/hp42s.htm |website=Museum of HP Calculators |access-date=2016-10-27}}

{{cite web |author-first=Takayuki |author-last=Hosoda |title=Upgrading the memory of the HP 42S to 32KB |date=2007-10-10 |url=http://www.finetune.co.jp/~lyuka/interests/calc/hp42s/ |access-date=2011-08-12 |url-status=live |archive-url=https://web.archive.org/web/20170917220206/http://www.finetune.co.jp/~lyuka/interests/calc/hp42s/ |archive-date=2017-09-17}}

}}

Further reading

  • {{cite book |title=HP-42S RPN Scientific Calculator – Owner's Manual |date=June 1988 |location=Corvallis, OR, USA |publisher=Hewlett-Packard Co. |edition=1 |id=00042-90001 |url=http://www.hp41.net/forum/fileshp41net/manuel-hp42s-us.pdf |access-date=2017-09-17 |url-status=live |archive-url=https://web.archive.org/web/20170917215457/http://www.hp41.net/forum/fileshp41net/manuel-hp42s-us.pdf |archive-date=2017-09-17}}
  • {{cite book |title=HP-42S RPN Scientific Calculator – Programming Examples and Techniques |date=July 1988 |publisher=Hewlett-Packard |edition=1 |id=00042-90020, 00042-90019 |url=http://www.hp41.net/forum/fileshp41net/hp42s-programming-examples.pdf |access-date=2017-12-19 |url-status=live |archive-url=https://web.archive.org/web/20171219223759/http://www.hp41.net/forum/fileshp41net/hp42s-programming-examples.pdf |archive-date=2017-12-19}}
  • {{cite book |title=An Alternative HP-42S/Free42 Manual |author-first1=José Lauro |author-last1=Strapasson |author-first2=Russ |author-last2=Jones |date=January 2010 |version=0.7 |url=http://thomasokken.com/free42/42s.pdf |access-date=2017-09-17 |url-status=live |archive-url=https://web.archive.org/web/20170917215145/http://thomasokken.com/free42/42s.pdf |archive-date=2017-09-17}}
  • HP-42S Quick Reference Guide (1 ed.). Corvallis, OR, USA, Dex Smith. October 1988. 00042-92222E.
  • {{cite web |title=HP-42S Owner's Manual Addendum: Hidden Matrix Functions |author-first=Joseph K. |author-last=Horn |date=2017-08-23 |orig-date=1988-11-09 |url=http://www.hpmuseum.org/forum/thread-8887-post-77713.html#pid77713 |access-date=2017-09-17 |url-status=live |archive-url=https://web.archive.org/web/20170917214206/http://www.hpmuseum.org/forum/thread-8887-post-77713.html |archive-date=2017-09-17}}
  • {{cite web |title=DM42 User Manual |version=3.17 |publisher=SwissMicros GmbH |date=2020-10-21 |orig-date=2016 |url=https://www.swissmicros.com/dm42/doc/dm42_user_manual/ |access-date=2020-10-21 |url-status=live |archive-url=https://web.archive.org/web/20201005101350/https://technical.swissmicros.com/dm42/doc/dm42_user_manual/ |archive-date=2020-10-05}}