Sounds like it may be a limitation in building an emulator around a slavish interpretation of the microcode.
If you drop that, it would be easy to build a 25 with subroutines, or any other feature you wish.
Or completely new machines.
-J
PS: I've wanted the same - but I cheat I use an HP33C emulator!
(02-09-2024 09:46 PM)John Garza (3665) Wrote: [ -> ]Sounds like it may be a limitation in building an emulator around a slavish interpretation of the microcode.
If you drop that, it would be easy to build a 25 with subroutines, or any other feature you wish.
Or completely new machines.
-J
PS: I've wanted the same - but I cheat I use an HP33C emulator!
Yes, the HP-33C is basically the HP-25 PLUS subroutines!
Namir
(02-07-2024 01:41 AM)Dave Britten Wrote: [ -> ]Well, if there's 16 free opcodes, that would be enough to add a few:
GSB 30
GSB 40
RTN
i.e. only support GSB to a few specific line numbers. Then you could have one or two small subroutines, which can occasionally make sense with a 49-step program memory.
What about a simple GSB 49 instruction. A GTO nn placed there would enable a subroutine just about anywhere in memory.
cheers
Tony
(02-25-2024 06:23 AM)teenix Wrote: [ -> ] (02-07-2024 01:41 AM)Dave Britten Wrote: [ -> ]Well, if there's 16 free opcodes, that would be enough to add a few:
GSB 30
GSB 40
RTN
i.e. only support GSB to a few specific line numbers. Then you could have one or two small subroutines, which can occasionally make sense with a 49-step program memory.
What about a simple GSB 49 instruction. A GTO nn placed there would enable a subroutine just about anywhere in memory.
cheers
Tony
Yeah, that would be even better. Just add that and RTN, with probably only a single subroutine return level supported - is anybody going to try to do recursion on a 25?
Of course, there's still the issue of making space in ROM to implement it!
Hi all,
I implemented the GSB RTN on my emulator/simulator for the HP-25 and HP-25C
GSB 49 is implemented by pressing [g][GTO]
RTN is implemented by pressing [g][BST]
The new codes are shown on the LED display during program entry, and SST or R/S down.
Doing a RTN without a matching GSB will jump to step .00 and stop the program
Multiple GSB's will overwrite the previous RTN step.
An example program...
Code:
01. CLx
02. GSB 49
03. +
04. GSB 49
05. +
06. GSB 49
07. +
08. GTO 00
11. 8
12. RTN
49. GT0 11
When R/S is pressed, the X result = 24.
I have uploaded the updated CCE33, HP-25 and HP-25C emulator downloads at teenix.org
cheers
Tony
(02-06-2024 06:07 PM)Dave Britten Wrote: [ -> ]RPN-25 from CuVee Software appears to do precisely that:
http://www.cuveesoft.ch/rpn25/
In addition to a whole bunch of other added features, such as labels.
That’d be my vote. This is not only a supercharged 25, but a turbo supercharged calc.
Labels, user defined softkey capability (on the top), some HP-41C programs in the app library, over 50 flags, conditional test extensions, several indirect addressing capabilities, full set of complex number functions, including hyperbolics, trig, natural & common logs, etc.
Have a go and take a look.
Nice. I wonder if anyone has actually typed in 999 program steps. Labels or not, that would be something
I like that you still have the original in there somewhere.
It's hard to imagine a HP-9100 with an Intel Core 9, math processor, gigs of RAM, color screen, terabyte drive and a laser printer sitting on top.
Even though I fiddle with them a bit, I like the originals. They have limitations by today's standards but that is what they are and is part of their charm.
cheers
Tony
(02-26-2024 10:20 PM)teenix Wrote: [ -> ]Nice. I wonder if anyone has actually typed in 999 program steps. Labels or not, that would be something I like that you still have the original in there somewhere.
It's hard to imagine a HP-9100 with an Intel Core 9, math processor, gigs of RAM, color screen, terabyte drive and a laser printer sitting on top.
Even though I fiddle with them a bit, I like the originals. They have limitations by today's standards but that is what they are and is part of their charm.
cheers
Tony
Now there's a good project if you get bored: write a bare-metal HP 25 reimplementation for x86 systems. No Windows or anything, just boot straight to a direct port of HP 25 microcode (with LOTS more RAM and speed available).