The Windows calculator emulators, hp29w and hp67w, come with the same advanced features as the HTML5 microcode versions did. They just work a little differently and there are some additional features. Continue reading The New Calculator Debuggers
Tag Archives: hp67internals
HP-67 Card Reader Revisited
There are some interesting parallels between how the HP-65 card reader works and the new CRC instructions in the HP-67. There seems to be a bit more to it than we’ve heard before Continue reading HP-67 Card Reader Revisited
HP-67 g MERGE
The g MERGE function allows you to load a part of a program or a data card; instead of all of it. There’s not much in the microcode for the function but here it is: Continue reading HP-67 g MERGE
HP67 – h SF 4 and h CF 4
There are two unused codes in the HP-67 calculator that actually do things. These are “h SF 4” and “h CF 4”. Now, if you know the HP-67 calculator, you know it doesn’t have a “flag 4”. There are only flags 0-3 and you can set, test and clear these to your heart’s content. What’s flag 4? Continue reading HP67 – h SF 4 and h CF 4
HP67 – The Other h PI
There is an unused code for the HP-67 calculator that displays as “h PI”. (It comes up as keycode “35 73”.) It is one of the six codes that you can’t normally enter into the calculator. What does it do? Does it key in PI, like the real one? Does it do something more interesting? Continue reading HP67 – The Other h PI
HP67 – f LBL (i)
The “f LBL (i)” instruction is one of the missing codes that you can’t normally key into a HP-67 calculator. But if you do, what happens? Continue reading HP67 – f LBL (i)
HP67 Merged Keycodes – State Info
As you key in a merged keycode the calculator has to remember which keys led up to this point. After all, pressing the [0] key produces very different results if it was preceded by [f], [g], [h], [STO], [RCL], [STO] [+], and so on. Here’s how it keeps track: Continue reading HP67 Merged Keycodes – State Info
HP67 Startup code
The hp67u emulator shows a “0.00” before you get a chance to select debugging so how can you explore the HP-67’s startup code?
Continue reading HP67 Startup code
HP67 Unused Program Codes
There are six instructions you can’t enter into a HP-67 calculator.
Continue reading HP67 Unused Program Codes
HP67 Program Step 992
There were a number of strange things you could do with a HP-67 calculator when they first came out and this one stuck in my memory somehow.
As you probably know, there are only 224 program steps in the programmable part of the HP-67. Well, there were some things you could do that would get you to program step 992. Here’s the details:
Continue reading HP67 Program Step 992
HP67 GSB and RTN
With the HP67 we use LBL to name a subroutine, GSB to call one and RTN to return from one.
The question is, “how does the HP-67 know where to return to?” It needs to remember where it is up to. Where does it store that information?
Continue reading HP67 GSB and RTN
HP67 User Program Counter
The HP67 saves the user program counter in the bottom 3 nibbles (2,1,0) of ram[61]. However, you could be forgiven for thinking that those three digits don’t look anything like the program counter display. Here’s why
Continue reading HP67 User Program Counter
HP67 Internals – S 9 and 12
The HP67 internal flags S 9 and S 12 are used during keyboard data entry. The meanings for S9,S12 are: Continue reading HP67 Internals – S 9 and 12
HP67 DEG, RAD and GRD
The HP67 calculator has three angle modes: DEG, RAD and GRD.
DEG is degrees. There are 360 degrees in a circle.
RAD is radians. There are 2*PI radians (about 6.28) in a circle.
GRD is gradians. I’d never heard of these before I got my original HP67 but apparently these are used in some fields and there are 400 gradians in a circle.
Continue reading HP67 DEG, RAD and GRD
HP67 FIX, SCI and ENG
When you select FIX, SCI or ENG mode in the HP67 it stores 22, 00 or 40 in nibbles 5 & 4 of ram[62]. It works like this:
Continue reading HP67 FIX, SCI and ENG
HP67 h PI
The HP67 stores PI/4 in ROM subroutine 05043 with 13 digit precision. It multiplies that by 4 (“c + c -> c[w]” twice) to get 3.1415926535900 and then rounds that to 3.141592654.
It works like this:
Continue reading HP67 h PI
HP67 Flags
The HP67 calculator has 4 flags. These can be set, cleared or tested. You use them in a user program to remember situations and to behave differently according to the situations. One example might be: the user entered a value (or not) and your program behaves suitably either way. There were a whole stack of programs at the time where you could enter a value and press [A], [B], [C] etc to store the value; or just press the button to calculate it. These included tax calculators, principal and interest calculators and ohms law – key in any two and press the third button for it to work out the third value. Continue reading HP67 Flags
HP67 Error Routine
The HP67 Error routine displays “Error”, flashes once (blank out and then comes back) and then waits for a keypress to clear the error message. It works like this Continue reading HP67 Error Routine
HP67 f CL PRGM
This needs more analysis, but here’s what happens when you press [f] [CL PRGM]
Continue reading HP67 f CL PRGM
HP67 Card Reader – Default Functions
The HP67 card reader contains two instructions that control a “default functions” flag.
The card reader integrated circuit is a Mostek MK6250N. That connects to the Arithmetic, Control and Timing (ACT) chip and actions a number of instructions that the ACT doesn’t understand. Instructions are 10 bits long. For this article the ones we are interested in are: Continue reading HP67 Card Reader – Default Functions