Post Reply 
HP-97 Emulator
01-11-2017, 08:02 AM
Post: #1
HP-97 Emulator
Hi all,

An emulator for the HP-97 is available at teenix.org

Seems to work ok, but a bit complex so might have a bug or two. I found a problem with the printer microcode, but seems fixed.

It is fully functional, has animated card insert and park function, functioning printer with HP font and sound effects from real HP-97.

It is a stand alone application, so just download and unzip the files into a directory and run the hp97 exe. It needs a screen size of 1280 x 720 or more for best results.

cheers

Tony
Find all posts by this user
Quote this message in a reply
01-12-2017, 11:39 PM
Post: #2
RE: HP-97 Emulator
Thanks Tony, that's very cool. I got a HP-67 when I was a student but always wanted to have the 97 as well; now I have got one :-)
Find all posts by this user
Quote this message in a reply
01-14-2017, 04:14 AM
Post: #3
RE: HP-97 Emulator
Very nice HP-97 emulator. Thank you!

Namir
Find all posts by this user
Quote this message in a reply
01-14-2017, 04:20 AM
Post: #4
RE: HP-97 Emulator
(01-12-2017 11:39 PM)AlexFekken Wrote:  Thanks Tony, that's very cool. I got a HP-67 when I was a student but always wanted to have the 97 as well; now I have got one :-)

(01-14-2017 04:14 AM)Namir Wrote:  Very nice HP-97 emulator. Thank you!

Namir

Thanks guys

I uploaded a later revision yesterday as I noticed I left out a couple of buttons that control the help file and closing the debug screen.

I also added the Demo Pac that is included in the HP67 module which has all the programming examples from the HP67 manual already formatted onto cards.

cheers

Tony
Find all posts by this user
Quote this message in a reply
01-14-2017, 05:50 AM (This post was last modified: 01-15-2017 04:29 AM by Joe Horn.)
Post: #5
RE: HP-97 Emulator
Tony's '97 emulator is so authentic that pressing "Sigma-minus, x-bar, %CH" makes it crash, just like the real '97! Smile

EDIT: The above confused some folks. What I meant was, after turning on an HP-97 (so it's all clear), press Sigma-minus, then press x-bar, then press %CH. The calculator will crash. It's a harmless crash, recoverable by toggling power.

X<> c
-Joe-
Visit this user's website Find all posts by this user
Quote this message in a reply
01-14-2017, 06:34 AM
Post: #6
RE: HP-97 Emulator
(01-14-2017 05:50 AM)Joe Horn Wrote:  Tony's '97 emulator is so authentic that pressing "Sigma-minus, x-bar, %CH" makes it crash, just like the real '97! Smile

Hi Joe,

Nothing like trying to be authentic ;-)

I wasn't aware of these problems.

I cannot get these keys to malfunction, is there some special circumstances where these errors occur? I might be able to figure out the microcode problem.

cheers

Tony
Find all posts by this user
Quote this message in a reply
01-15-2017, 04:26 AM (This post was last modified: 01-15-2017 04:32 AM by Joe Horn.)
Post: #7
RE: HP-97 Emulator
(01-14-2017 06:34 AM)teenix Wrote:  
(01-14-2017 05:50 AM)Joe Horn Wrote:  Tony's '97 emulator is so authentic that pressing "Sigma-minus, x-bar, %CH" makes it crash, just like the real '97! Smile

Hi Joe,

Nothing like trying to be authentic ;-)

I wasn't aware of these problems.

I cannot get these keys to malfunction, is there some special circumstances where these errors occur? I might be able to figure out the microcode problem.

cheers

Tony

Oh no, please don't "fix" this! It's a bug in the original '67 and '97 which really should be kept. Here's what happens: After turning on, pressing Sigma-Minus followed by X-bar puts a negative zero in stack register Y. This can only be seen by executing the STK command on the '67 (or by executing PRINT STACK on a *real* '97 or on a very good emulator). If %CH is executed with that negative zero in Y, the poor machine attempts to divide by zero (the negative sign makes it think it's not zero) and of course it crashes.

Some '97 emulators (e.g. "RPN-97 Pro" from cuveesoft.ch) generate an "Error" when division by negative zero is attempted. I personally dislike that, since IMHO the best emulators act exactly like the original calculators, bugs and all.

X<> c
-Joe-
Visit this user's website Find all posts by this user
Quote this message in a reply
01-15-2017, 06:22 AM
Post: #8
RE: HP-97 Emulator
(01-15-2017 04:26 AM)Joe Horn Wrote:  Oh no, please don't "fix" this! It's a bug in the original '67 and '97 which really should be kept. Here's what happens: After turning on, pressing Sigma-Minus followed by X-bar puts a negative zero in stack register Y. This can only be seen by executing the STK command on the '67 (or by executing PRINT STACK on a *real* '97 or on a very good emulator). If %CH is executed with that negative zero in Y, the poor machine attempts to divide by zero (the negative sign makes it think it's not zero) and of course it crashes.

Some '97 emulators (e.g. "RPN-97 Pro" from cuveesoft.ch) generate an "Error" when division by negative zero is attempted. I personally dislike that, since IMHO the best emulators act exactly like the original calculators, bugs and all.

I quite agree, it will stay as is :-)

I put a little note about the bug on the front page of the help file and just uploaded a new HP97.zip.

PS Thanks for the kind words, the emulator does print out the stack with -0.00 in Y. You can also see this value in the Y register when the debug screen is open.

cheers

Tony
Find all posts by this user
Quote this message in a reply
01-15-2017, 06:29 AM
Post: #9
RE: HP-97 Emulator
PPS I just tried that on the HP-67 emulator and same result. -0.00 can also be seen in the Y register on the debug screen. (9 0000000000 0 00)

When I get home I will see if the PIC micro in my HP-67 emulator smokes up when I present this bug to it. :-)

cheers

Tony
Find all posts by this user
Quote this message in a reply
01-17-2017, 02:13 PM
Post: #10
RE: HP-97 Emulator
What a cool blast from the past! The sound effects are great, and I especially like that the "print roll" can actually be printed with the authentic dot matrix font.

I have found a small bug related to printing: when the factorial function is executed, the printer prints "NK" rather than "N!". I don't have a working physical 97 so I don't know whether this bug is present in the real 97 or just the emulator.

Thanks for a really neat program!
John
Find all posts by this user
Quote this message in a reply
01-17-2017, 04:15 PM
Post: #11
RE: HP-97 Emulator
(01-17-2017 02:13 PM)John Keith Wrote:  What a cool blast from the past! The sound effects are great, and I especially like that the "print roll" can actually be printed with the authentic dot matrix font.

I have found a small bug related to printing: when the factorial function is executed, the printer prints "NK" rather than "N!". I don't have a working physical 97 so I don't know whether this bug is present in the real 97 or just the emulator.

Thanks for a really neat program!
John

I suspect that is a "bug" in the printer font.
Find all posts by this user
Quote this message in a reply
01-17-2017, 05:22 PM
Post: #12
RE: HP-97 Emulator
(01-15-2017 04:26 AM)Joe Horn Wrote:  Some '97 emulators (e.g. "RPN-97 Pro" from cuveesoft.ch) generate an "Error" when division by negative zero is attempted. I personally dislike that, since IMHO the best emulators act exactly like the original calculators, bugs and all.

As the author of RPN-97 Pro, I totally agree. That's why I call my apps "simulators", not emulators. True emulators are close to impossible to do without using the original ROM code.
Willy Kunz
CuVee Software
Find all posts by this user
Quote this message in a reply
01-17-2017, 11:35 PM
Post: #13
RE: HP-97 Emulator
(01-17-2017 04:15 PM)Harald Wrote:  
(01-17-2017 02:13 PM)John Keith Wrote:  What a cool blast from the past! The sound effects are great, and I especially like that the "print roll" can actually be printed with the authentic dot matrix font.

I have found a small bug related to printing: when the factorial function is executed, the printer prints "NK" rather than "N!". I don't have a working physical 97 so I don't know whether this bug is present in the real 97 or just the emulator.

Thanks for a really neat program!
John

I suspect that is a "bug" in the printer font.

Hi Guys,

Your welcome Smile

That was indeed the case. I suspect that the PIK chips used in calculator models that use them have slightly different ROM masks for the character sets.

The "K" character is not used for printing in the HP-97, so I replaced that printer code with a bold "!" character. I created a new print character data file specially for the HP-97 download.

I also noticed that the lower case "i" is also printed in a bolder font for the HP-97 and HP-19C, so I replaced that character too.

The print head sound effect had some "ticks" in it which I think is a worn print mechanism from the calculator it came from, so I smoothed it out.

The display was also supposed to blank when using the paper feed button, so that was modified also.

New uploads available.

cheers

Tony
Find all posts by this user
Quote this message in a reply
Post Reply 




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