Post Reply 
Online HP-45 Emulator - First calculator with a shift key
12-28-2023, 06:15 PM (This post was last modified: 12-28-2023 06:33 PM by van2z.)
Post: #1
Online HP-45 Emulator - First calculator with a shift key
After building the HP-35 calculator, I was looking if there was any low hanging fruit for me to reuse the same code. I found the HP-80 used exactly the same hardware, but I couldn't find the ROM.

I see Brouhaha seems to have manually copied each assembly instruction from the original patent into his Nonpareil code, but I don't have an easy way to compile that to see the ROM binary. If anyone can do this, it would be appreciated.

Moving on after the HP-80, was the HP-45, for which I was able to find the ROM binary, also from Brouhaha, here.

The hardware here was also very similar. The main difference is the inclusion of a "data storage" chip, giving the calculator an extra 560 bits to use. Here it is:

https://veniamin-ilmer.github.io/hp45/

I have never used this calculator before. I see it starts out using fixed notation 2. If anyone has used this calculator before, please let me know if it is functioning properly, or if you see any issues.
Find all posts by this user
Quote this message in a reply
12-28-2023, 07:22 PM (This post was last modified: 12-28-2023 07:51 PM by Thomas Klemm.)
Post: #2
RE: Online HP-45 Emulator - First calculator with a shift key
(12-28-2023 06:15 PM)van2z Wrote:  I found the HP-80 used exactly the same hardware, but I couldn't find the ROM.

You may have to build the nonpareil project and use uasm to compile 80.asm into an object file.

You can find here the: 70.rom.
This is another calculator that used the same chip.

From HP-45:
Quote:The timer could be invoked by pressing RCL and then pressing CHS 7 8 all at the same time.

Not sure if this is possible, but it would be cool if the timer could be started.



Addendum: If found them here: ROMs



Relevant: HP-80 Nonpareil Emulator: fixed a bug in the calendar functions
IIRC the bug was present in his iPhone app.
Thus you might have to apply the patch.
Find all posts by this user
Quote this message in a reply
12-28-2023, 08:02 PM
Post: #3
RE: Online HP-45 Emulator - First calculator with a shift key
Thank you Thomas for the ROMs! I will be looking into them a bit later.

After a bit of searching, I found these simultaneous key presses trigger as if pressing a nonexistent key code 60.

Although this does switch it into timer mode, it seems buggy. It doesn't seem to work correctly. I am trying to figure out if this is an issue in the emulator or the ROM.

I have to go right now. I don't want to leave you hanging, so I added a button at the bottom to trigger the timer mode. You still have to press RCL before pressing the timer button to get it to switch modes.
Find all posts by this user
Quote this message in a reply
12-28-2023, 10:23 PM
Post: #4
RE: Online HP-45 Emulator - First calculator with a shift key
This Timer feature has revealed a few issues in my emulation, which is great.

I fixed a lacking decimal issue. Tomorrow I'll tackle the sticky keys and blinking display.

The timer works, but for now you just might need to click buttons a few more times to get them to work. (CHS is start / stop. CLX clears the count).
Find all posts by this user
Quote this message in a reply
12-28-2023, 10:40 PM
Post: #5
RE: Online HP-45 Emulator - First calculator with a shift key
(12-28-2023 10:23 PM)van2z Wrote:  This Timer feature has revealed a few issues in my emulation, which is great.

I fixed a lacking decimal issue. Tomorrow I'll tackle the sticky keys and blinking display.

The timer works, but for now you just might need to click buttons a few more times to get them to work. (CHS is start / stop. CLX clears the count).

Note that the 45 lacked a crystal for the timer so it was very inaccurate unless you opened it up and installed the correct crystal yourself.

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
12-28-2023, 11:14 PM (This post was last modified: 12-28-2023 11:16 PM by van2z.)
Post: #6
RE: Online HP-45 Emulator - First calculator with a shift key
I do like that the timer seems relatively accurate. This shows me the emulator is getting timing the CPU instructions accurately. I'll look into adding a crystal when emulating the HP-55.
Find all posts by this user
Quote this message in a reply
12-29-2023, 07:51 AM (This post was last modified: 12-29-2023 07:57 AM by Namir.)
Post: #7
RE: Online HP-45 Emulator - First calculator with a shift key
I noticed a bug in the HP45 enulator. The RCL 0 does not work.

Also when you do CHS and the value in the X register is 0, the emulator should ignore the CHS command.

Namir
Find all posts by this user
Quote this message in a reply
12-29-2023, 08:15 AM
Post: #8
RE: Online HP-45 Emulator - First calculator with a shift key
(12-29-2023 07:51 AM)Namir Wrote:  Also when you do CHS and the value in the X register is 0, the emulator should ignore the CHS command.
Namir

I'm not sure but this might be due to HP-45 revisions. My simulator shows a negative sign when 0.00 is displayed, and also a real HP-45 that I have here (serial 1349S 11201)

cheers

Tony
Find all posts by this user
Quote this message in a reply
12-29-2023, 10:43 AM
Post: #9
RE: Online HP-45 Emulator - First calculator with a shift key
(12-29-2023 08:15 AM)teenix Wrote:  My simulator shows a negative sign when 0.00 is displayed, and also a real HP-45 that I have here (serial 1349S 11201)

Here's another HP-45 Emulator that shows the same behaviour.
Find all posts by this user
Quote this message in a reply
12-29-2023, 11:57 AM
Post: #10
RE: Online HP-45 Emulator - First calculator with a shift key
You guys are right. The minus zero is part of the hp-45.
Find all posts by this user
Quote this message in a reply
12-29-2023, 01:11 PM
Post: #11
RE: Online HP-45 Emulator - First calculator with a shift key
(12-28-2023 07:22 PM)Thomas Klemm Wrote:  Thus you might have to apply the patch.

That's already done.
The commit message of 4217291 from Jul 4, 2014 is:
Quote:Patch to HP-80 ROM, which solves DATE function bug. Patch provided by…
… Thomas Klemm.
Find all posts by this user
Quote this message in a reply
12-29-2023, 05:22 PM
Post: #12
RE: Online HP-45 Emulator - First calculator with a shift key
Hey folks, I fixed up the sticky keys and display issues. The timer works great now.

This also fixes an issue I missed earlier with mobile users getting a delayed touch response. This has been resolved for both HP-35 and HP-45 emulators.

Happy new years everyone. See you next year.
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 3 Guest(s)